Sorry, you have lost me a little bit. When you say dynamically turn on/off loggers I am assuming you really mean enable/disable filtering on those Loggers?
Are you thinking that the rules can be added or removed dynamically? Or just the parameters to the rules? I ask because you can’t really add a Supplier dynamically if it is part of the configuration. Log4j will process the configuration only when it is changed. However, the data they rely on can come from anywhere - more or less how we use Lookups to evaluate conditions on every log event. Ralph > On Oct 21, 2021, at 8:44 AM, Adwait Kumar Singh > <theadvaitkumarsi...@gmail.com> wrote: > > This is still in the proof of concept phase, but what I am trying to do is > create a filter which allows developers to dynamically turn on/off loggers > based on some parameters without restarting their system. The parameters > can be varied, like: > 1. Turn on WARN log levels of a particular class. > 2. Turn on TRACE logging only on a particular host. > 3. Turn on DEBUG logs only for requests by a particular client for a short > duration, > ... and any combination of such parameters. > > The way I was thinking of doing this was creating a filter which takes in a > Supplier<Rule> and then evaluates a log event against that rule. > > On Thu, Oct 21, 2021 at 7:37 PM Apache <ralph.go...@dslextreme.com> wrote: > >> It sounds to me like you want to create a new type of plugin similar to >> PatternConerters. I am curious as to what your filter does. Is it something >> that would be useful to others so that we would be interested in including >> it? >> >> Ralph >> >>> On Oct 21, 2021, at 6:07 AM, Adwait Kumar Singh < >> theadvaitkumarsi...@gmail.com> wrote: >>> >>> I am creating a filter which requires the user to give a Supplier<Rule> >> to >>> fetch some custom rules. I am wondering how to go about getting this >>> Supplier from the configuration xml. >>> >>> One way I have thought of is using some sort of Registry and then just >>> asking the user to provide a key to lookup into the Registry to fetch the >>> Supplier. The user then registers his Supplier to this Registry in Java >>> code. >>> What are your thoughts on this and do you guys know of a better way to do >>> this? >>> >>> Thanks, >>> Adwait. >> >> >>