You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I think TurboFilter decide method should be called with provided format/params/throwable the same way whether fluent logging API has been used or not.
Currently, with slf4j-api 2.0.16 and logback-classic 1.5.8 :
logger.info(“Hello world.”); call TurboFilter decide method with provided format/params/throwable
logger.atInfo().log(“Hello world.”); never call TurboFilter decide with provided format/params/throwable (A call equivalent to logger.isInfoEnabled() with null format/params/throwable is done ; that’s not a problem but that’s not what is expected).
In logback documentation, I found :
On Fluent Logging API : The statement logger.atInfo().log(“Hello world.”); is equivalent to : logger.info(“Hello world.”);
[…] (TurboFilter) are called not only when a given appender is used, but each and every time a logging request is issued. Their scope is wider than appender-attached filters.
I think it’s an issue that TurboFilters is not called with format/params/throwable when using fluent logging API.
The text was updated successfully, but these errors were encountered:
+1
I had an issue trying to filter logs using a TurboFilter based on matching the format with a specific string and returning a DENY, but in the resulting logs in the console the string still appeared, presumably from calls to decide with format = null. Adding a
if (format == null) {
return FilterReply.DENY;
}
to the decide fixed it, but doesn't look that good to me... (Or is it?)
At the very least, I think, it should be documented that TurboFilter's decide can be called with null parameters.
I think TurboFilter
decide
method should be called with provided format/params/throwable the same way whether fluent logging API has been used or not.Currently, with slf4j-api 2.0.16 and logback-classic 1.5.8 :
logger.info(“Hello world.”);
call TurboFilterdecide
method with provided format/params/throwablelogger.atInfo().log(“Hello world.”);
never call TurboFilterdecide
with provided format/params/throwable (A call equivalent tologger.isInfoEnabled()
with null format/params/throwable is done ; that’s not a problem but that’s not what is expected).In logback documentation, I found :
logger.atInfo().log(“Hello world.”);
is equivalent to :logger.info(“Hello world.”);
I think it’s an issue that TurboFilters is not called with format/params/throwable when using fluent logging API.
The text was updated successfully, but these errors were encountered: