Class ThreadContextKeyExistsFilter

  • All Implemented Interfaces:
    org.apache.logging.log4j.core.Filter, org.apache.logging.log4j.core.LifeCycle, org.apache.logging.log4j.core.LifeCycle2

    @Plugin(name="ThreadContextKeyExistsFilter",
            category="Core",
            elementType="filter")
    public class ThreadContextKeyExistsFilter
    extends org.apache.logging.log4j.core.filter.AbstractFilter
    Log4j filter that decides to log an entry based on whether an MDC key exists or not. If the key specified by key exists, and acceptIfKeyExists is true, then Filter.Result.ACCEPT is returned. If acceptIfKeyExists is false, Filter.Result.DENY is returned. If the key doesn't exist, and denyIfKeyDoesNotExist is true, then Filter.Result.DENY is returned, otherwise Filter.Result.NEUTRAL is returned.
    Author:
    avasquez
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.apache.logging.log4j.core.filter.AbstractFilter

        org.apache.logging.log4j.core.filter.AbstractFilter.AbstractFilterBuilder<B extends org.apache.logging.log4j.core.filter.AbstractFilter.AbstractFilterBuilder<B>>
      • Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.Filter

        org.apache.logging.log4j.core.Filter.Result
      • Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.LifeCycle

        org.apache.logging.log4j.core.LifeCycle.State
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static String PLUGIN_NAME  
      • Fields inherited from class org.apache.logging.log4j.core.filter.AbstractFilter

        onMatch, onMismatch
      • Fields inherited from class org.apache.logging.log4j.core.AbstractLifeCycle

        DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT, LOGGER
      • Fields inherited from interface org.apache.logging.log4j.core.Filter

        ELEMENT_TYPE, EMPTY_ARRAY
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static ThreadContextKeyExistsFilter createFilter​(String key, boolean acceptIfKeyExists, boolean denyIfKeyDoesNotExist)  
      org.apache.logging.log4j.core.Filter.Result filter()  
      org.apache.logging.log4j.core.Filter.Result filter​(org.apache.logging.log4j.core.LogEvent event)  
      org.apache.logging.log4j.core.Filter.Result filter​(org.apache.logging.log4j.core.Logger logger, org.apache.logging.log4j.Level level, org.apache.logging.log4j.Marker marker, Object msg, Throwable t)  
      org.apache.logging.log4j.core.Filter.Result filter​(org.apache.logging.log4j.core.Logger logger, org.apache.logging.log4j.Level level, org.apache.logging.log4j.Marker marker, String msg, Object... params)  
      org.apache.logging.log4j.core.Filter.Result filter​(org.apache.logging.log4j.core.Logger logger, org.apache.logging.log4j.Level level, org.apache.logging.log4j.Marker marker, org.apache.logging.log4j.message.Message msg, Throwable t)  
      void setAcceptIfKeyExists​(boolean acceptIfKeyExists)  
      void setDenyIfKeyDoesNotExist​(boolean denyIfKeyDoesNotExist)  
      void setKey​(String key)  
      • Methods inherited from class org.apache.logging.log4j.core.filter.AbstractFilter

        equalsImpl, filter, filter, filter, filter, filter, filter, filter, filter, filter, filter, getOnMatch, getOnMismatch, hashCodeImpl, toString
      • Methods inherited from class org.apache.logging.log4j.core.AbstractLifeCycle

        getState, getStatusLogger, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, start, stop, stop, stop
      • Methods inherited from interface org.apache.logging.log4j.core.LifeCycle

        getState, initialize, isStarted, isStopped, start, stop
    • Constructor Detail

      • ThreadContextKeyExistsFilter

        public ThreadContextKeyExistsFilter()
    • Method Detail

      • setKey

        public void setKey​(String key)
      • setAcceptIfKeyExists

        public void setAcceptIfKeyExists​(boolean acceptIfKeyExists)
      • setDenyIfKeyDoesNotExist

        public void setDenyIfKeyDoesNotExist​(boolean denyIfKeyDoesNotExist)
      • filter

        public org.apache.logging.log4j.core.Filter.Result filter​(org.apache.logging.log4j.core.LogEvent event)
        Specified by:
        filter in interface org.apache.logging.log4j.core.Filter
        Overrides:
        filter in class org.apache.logging.log4j.core.filter.AbstractFilter
      • filter

        public org.apache.logging.log4j.core.Filter.Result filter​(org.apache.logging.log4j.core.Logger logger,
                                                                  org.apache.logging.log4j.Level level,
                                                                  org.apache.logging.log4j.Marker marker,
                                                                  org.apache.logging.log4j.message.Message msg,
                                                                  Throwable t)
        Specified by:
        filter in interface org.apache.logging.log4j.core.Filter
        Overrides:
        filter in class org.apache.logging.log4j.core.filter.AbstractFilter
      • filter

        public org.apache.logging.log4j.core.Filter.Result filter​(org.apache.logging.log4j.core.Logger logger,
                                                                  org.apache.logging.log4j.Level level,
                                                                  org.apache.logging.log4j.Marker marker,
                                                                  Object msg,
                                                                  Throwable t)
        Specified by:
        filter in interface org.apache.logging.log4j.core.Filter
        Overrides:
        filter in class org.apache.logging.log4j.core.filter.AbstractFilter
      • filter

        public org.apache.logging.log4j.core.Filter.Result filter​(org.apache.logging.log4j.core.Logger logger,
                                                                  org.apache.logging.log4j.Level level,
                                                                  org.apache.logging.log4j.Marker marker,
                                                                  String msg,
                                                                  Object... params)
        Specified by:
        filter in interface org.apache.logging.log4j.core.Filter
        Overrides:
        filter in class org.apache.logging.log4j.core.filter.AbstractFilter
      • filter

        public org.apache.logging.log4j.core.Filter.Result filter()
      • createFilter

        @PluginFactory
        public static ThreadContextKeyExistsFilter createFilter​(@PluginAttribute("key")
                                                                String key,
                                                                @PluginAttribute("acceptIfKeyExists")
                                                                boolean acceptIfKeyExists,
                                                                @PluginAttribute("denyIfKeyDoesNotExist")
                                                                boolean denyIfKeyDoesNotExist)