Apache Log4cxx Version 1.0.0
Loading...
Searching...
No Matches
Filtering Log Messages

Table of Contents

Filtering Messages

When dealing with large amounts of logging information, it can be useful to filter on messages that we are interested in. This filtering only takes places after determining that the level of the current logger would log the message in the first place. When defining filters, note that they can only be defined on a per-appender basis, they do not globally affect anything.

The filtering system is similar in concept to Linux iptables rules, in that there is a chain of filters that can accept a log message, deny the log message, or pass the message on to the next filter. Accepting a log message means that the message will be logged immediately without consulting other filters. Denying has the opposite affect, immediately dropping the log message and not consulting any other filters.

See the documentation for Filter for some more information, or view a configuration sample.

The following filters are available:

  • AndFilter - Takes in a list of filters that must all match
  • DenyAllFilter - Drops all log messages that reach it
  • LevelMatchFilter - Filter log messages based off of their level
  • LevelRangeFilter - Filter log messages based off of their level in a given range
  • LocationInfoFilter - Filter log messages based off of their location(line number and/or method name)
  • LoggerMatchFilter - Accept or deny depending on the logger that generated the message
  • MapFilter - Based off of the log messages MDC, accept or deny the message
  • StringMatchFilter - If the given substring is found in the message, accept or deny

The following pages have information on specific filters: