
I'm not sure I got the idea correctly. Do you mean that the channel outputs the record only if some condition is satisfied (e.g. log level is high enough)? How is it different from sinks and filters?
I think a channel is a flow of log dealing with the same matter. The warning channel ? Maybe this is over design or useless. Or maybe this is interesting, I don't know. I was looking for precision from Caleb.
JD, may be requirement #5 could be corrected: - "The library shall be able to output to different sink". Sinks? Is this what "multiplexing" above means? - "Each sink shall be link to a particular formatting". Did you mean "shall be able to have a particular formatting"?
Fixed.
One thing that isn't clear for me now is the way the library should be initialized. Obviously, in most industrial-sized use cases the initialization should be made from an external source (e.g. a file with settings, system registry, etc.), but in a small-sized solutions either no or minimum initialization may be done right from code. The
Yes I agree. Simplicity.
problem here is that I see no unified way to init the lib the first way. For some cases a simple text file would be sufficient, for others the settings should be in XML, for third ones they should be obtained not from the file at all. Therefore for now I can only think of a direct initialization from code. Any other suggestions/opinions?
Do we want to manage windows registry? Count me against that. Is there some generic way to obtain configuration from a file? _Boost.program_options_ ? Boost.Serialization? Do we really want to deal with multiple file formats? I am not convinced. I think minimal init in the code is a requirement. Logging shall be a simple task. JD