
Hi, I'm currently attempting to convert parts of our production log system to using Boost.Log as part of my review. At first glance this looked like a trivial thing, since Boost.Log supports all features (and more!) than I would need to do this task. However, I can't find what I'm looking for in the docs and I wish to not poke around anymore in the Boost.Log code. Simple task 1 I've two source level attributes, System and Severity. I wish to create a log macro that takes these two arguments. enum System { SYSTEM_A, SYSTEM_B, }; enum SeverityLevel // I don't want to use the built-in severity enum, since need flexibility to add/remove levels. { FREQUENT, DEBUG, TEMP, INFO, WARNING, ERROR, }; void foo() { LOG(SYSTEM_A, INFO, "Hello cruel world" << "!"); } The above is not a complicated scenario and I should be able to quickly find an answer. Maybe I've just missed it..:) Simple task 2 Create a custom filter without using any Lambda magic. struct Filter { System sys; SeverityLevel sev; bool operator()(???) { // pseudo-code, since I don't know how to write this return Attributes["System"] == sys && Attributes["SeverityLevel"] >= sev; } }; Help appreciated, I would like to get to the more complicated parts.. / Christian