For the CONFIG level, you could match it to the same one in log4j-jul: https://logging.apache.org/log4j/2.x/log4j-jul/apidocs/src-html/org/apache/logging/log4j/jul/LevelTranslator.html#line.43
On 23 February 2017 at 15:39, Apache <ralph.go...@dslextreme.com> wrote: > And that issue has now been marked closed. However, there are still a > couple of synchronized methods in there that are called on every filter > comparison so we will have to rerun our performance benchmarks to see if it > made a significant difference. > > Ralph > > > On Feb 23, 2017, at 2:30 PM, Apache <ralph.go...@dslextreme.com> wrote: > > > > Ceki obviously reads this list as he marked SLF4J-240 in progress right > after I posted the message below. Keep an eye on that for a fix. > > > > While your in there Ceki, the contains methods in BasicMarker aren’t > thread-safe. > > > > Ralph > > > >> On Feb 23, 2017, at 1:29 PM, Apache <ralph.go...@dslextreme.com> wrote: > >> > >> Markers would work but I wouldn’t recommend using them with SLF4J. See > https://jira.qos.ch/browse/SLF4J-240 <https://jira.qos.ch/browse/SLF4J-240>. > It has been open for over 5 years so I’m of the impression it will never be > fixed. http://logging.apache.org/log4j/2.x/performance.html# > Advanced_Filtering <http://logging.apache.org/log4j/2.x/performance.html# > Advanced_Filtering> shows that filtering on Markers becomes a huge > bottleneck in a multithreaded system. > >> > >> Ralph > >> > >> > >>> On Feb 23, 2017, at 1:01 PM, Marshall Schor <m...@schor.com> wrote: > >>> > >>> > >>> > >>> On 2/23/2017 1:09 PM, Apache wrote: > >>>> You shouldn’t be trying to modify the logger. You should be trying to > modify the configuration. Take a look at http://logging.apache.org/ > log4j/2.x/manual/customconfig.html#Programmatically_Modifying_the_Current_ > Configuration_after_Initialization <http://logging.apache.org/ > log4j/2.x/manual/customconfig.html#Programmatically_Modifying_the_Current_ > Configuration_after_Initialization> <http://logging.apache.org/ > log4j/2.x/manual/customconfig.html#Programmatically_Modifying_the_Current_ > Configuration_after_Initialization <http://logging.apache.org/ > log4j/2.x/manual/customconfig.html#Programmatically_Modifying_the_Current_ > Configuration_after_Initialization>>. That example creates an appender > and a logger and adds them. In your case, you would want to find > loggerConfig associated with your logger by calling > config.getLoggerConfig(“loggerName”). > Then add the filter to that. > >>>> > >>>> That said, you should probably explain what you are actually trying > to do. More often than not, dynamically updating the logging configuration > is unnecessary as what you really want to do can be achieved other ways. > >>> > >>> Thanks. > >>> What I'm trying to do is to run JUnit testing of an old logging facade > that I've > >>> bridged to log4j-2. > >>> > >>> In the test, I set a filter, and want to see that it worked. > >>> > >>> While I have your attention, I'm bridging from a format that used the > JUL > >>> "CONFIG" level, and would like to know how to represent this in a > "neutral" way > >>> for modern loggers. (I'm thinking of SLF4J, Log4J, and LogBack). My > thought is > >>> to map CONFIG requests to INFO requests with a "Marker" identifying > CONFIG. > >>> Same goes for FINE/FINER - mapping to TRACE, with markers for the two > >>> alternatives. To make this work, I'm implementing special "Filters" > :-). > >>> > >>> Is there a better way? I know you can introduce additional levels in > Log4j-2, > >>> but that doesn't seem to be supported in SLF4J and LogBack, and I'm > looking for > >>> a more universal approach. > >>> > >>> Thanks. -Marshall > >>> > >>>> > >>>> Ralph > >>>> > >>>>> On Feb 23, 2017, at 9:39 AM, Marshall Schor <m...@schor.com> wrote: > >>>>> > >>>>> Hi, > >>>>> > >>>>> I'm writing test cases, using version 2.8 of Log4j. > >>>>> > >>>>> One test sets a filter on a logger. > >>>>> > >>>>> Looking (afterwards) at the logger, I see that the logger has a > field: > >>>>> > >>>>> "privateConfig", and that has two fields for configuration info: > >>>>> > >>>>> - config (set to an instance of XmlConfiguration) > >>>>> - loggerConfig (has the filter I set on the logger). > >>>>> > >>>>> The code for isEnabled in Logger (line 238): > >>>>> public boolean isEnabled(final Level level, final Marker marker, > final Object > >>>>> message, final Throwable t) { > >>>>> return privateConfig.filter(level, marker, message, t); > >>>>> } > >>>>> > >>>>> privateConfig.filter() although it has both a "config" and a > "loggerConfig", > >>>>> only checks the config. > >>>>> > >>>>> The fact that I successfully used an API to set the loggerConfig > with a filter > >>>>> is ignored. > >>>>> > >>>>> Should the design for privateConfig.filter() check both configs, or > is there > >>>>> some API call to "merge" the change I did that was recorded in the > field > >>>>> "loggerConfig" into the config stored in the field "config"? > >>>>> > >>>>> -Marshall Schor > >>>>> > >>>>> P.S., here's the API call I did to set a filter: > >>>>> > >>>>> // coreLogger is a cast of a normal logger, to enable the get() > method > >>>>> coreLogger.get().addFilter(myFilter); > >>>>> > >>>>> // not sure if this is needed, but did it anyways > >>>>> coreLogger.getContext().updateLoggers(); > >>>>> > >>>>> > >>>>> > >>>>> ------------------------------------------------------------ > --------- > >>>>> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org > >>>>> For additional commands, e-mail: log4j-user-h...@logging.apache.org > >>>>> > >>>>> > >>>> > >>> > >>> > >>> --------------------------------------------------------------------- > >>> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org > <mailto:log4j-user-unsubscr...@logging.apache.org> > >>> For additional commands, e-mail: log4j-user-h...@logging.apache.org > <mailto:log4j-user-h...@logging.apache.org> > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org > > For additional commands, e-mail: log4j-user-h...@logging.apache.org > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org > For additional commands, e-mail: log4j-user-h...@logging.apache.org > > -- Matt Sicker <boa...@gmail.com>