[log]: Filter declaration in settings files, associativity and operator precedence

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[log]: Filter declaration in settings files, associativity and operator precedence

Boost - Users mailing list
Hi all,

I am experimenting with using multiple channels with Boost.Log. I am
using the boost::trivial severity levels, the common attributes, and
logging using BOOST_LOG_SEV() using a mix of global and class specific
loggers. I am also using boost::log::init_from_stream(std::istream&) to
configure sinks from a settings file. I would like to be able to define
a sink filter that allows increasing the logging verbosity on just one
channel but I am struggling to write succinct filer expressions. E.g
given three channels A, B, and C I would like to write:

Filter="(%Channel% = \"B\" and %Severity% >= trace) or %Severity% >=
warning"

to increase the verbosity to trace only on channel B, but this doesn't
work. I am finding I have to write:

Filter="(%Channel% = \"B\" and %Severity% >= trace) or (%Channel% !=
\"B\" and %Severity% >= warning)"

Is this expected behaviour? If so then declaring more complex filtering
will become burdensome.

Regards
Bill Somerville.

_______________________________________________
Boost-users mailing list
[hidden email]
https://lists.boost.org/mailman/listinfo.cgi/boost-users