Interface LoggerConfigAdminMBean

All Known Implementing Classes:
LoggerConfigAdmin

public interface LoggerConfigAdminMBean
The MBean interface for monitoring and managing a LoggerConfig.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    ObjectName pattern ("org.apache.logging.log4j2:type=%s,component=Loggers,name=%s") for LoggerConfigAdmin MBeans.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns a String array with the appender refs configured for the instrumented LoggerConfig.
    Returns a string description of all filters configured for the instrumented LoggerConfig.
    Returns the LoggerConfig level as a String.
    Returns the name of the instrumented LoggerConfig.
    boolean
    Returns whether the instrumented LoggerConfig is additive.
    boolean
    Returns whether the instrumented LoggerConfig is configured to include location.
    void
    setAdditive(boolean additive)
    Sets whether the instrumented LoggerConfig should be additive.
    void
    Sets the LoggerConfig level to the specified value.
  • Field Details

    • PATTERN

      static final String PATTERN
      ObjectName pattern ("org.apache.logging.log4j2:type=%s,component=Loggers,name=%s") for LoggerConfigAdmin MBeans. This pattern contains two variables, where the first is the name of the context, the second is the name of the instrumented logger config.

      You can find all registered LoggerConfigAdmin MBeans like this:

       MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
       String pattern = String.format(LoggerConfigAdminMBean.PATTERN, "*", "*");
       Set<ObjectName> loggerConfigNames = mbs.queryNames(new ObjectName(pattern), null);
       

      Some characters are not allowed in ObjectNames. The logger context name and logger config name may be quoted. When LoggerConfigAdmin MBeans are registered, their ObjectNames are created using this pattern as follows:

       String ctxName = Server.escape(loggerContext.getName());
       String loggerConfigName = Server.escape(loggerConfig.getName());
       String name = String.format(PATTERN, ctxName, loggerConfigName);
       ObjectName objectName = new ObjectName(name);
       
      See Also:
  • Method Details

    • getName

      String getName()
      Returns the name of the instrumented LoggerConfig.
      Returns:
      the name of the LoggerConfig
    • getLevel

      String getLevel()
      Returns the LoggerConfig level as a String.
      Returns:
      the LoggerConfig level.
    • setLevel

      void setLevel(String level)
      Sets the LoggerConfig level to the specified value.
      Parameters:
      level - the new LoggerConfig level.
      Throws:
      IllegalArgumentException - if the specified level is not one of "OFF", "FATAL", "ERROR", "WARN", "INFO", "DEBUG", "TRACE", "ALL"
    • isAdditive

      boolean isAdditive()
      Returns whether the instrumented LoggerConfig is additive.
      Returns:
      true if the LoggerConfig is additive, false otherwise
    • setAdditive

      void setAdditive(boolean additive)
      Sets whether the instrumented LoggerConfig should be additive.
      Parameters:
      additive - true if the instrumented LoggerConfig should be additive, false otherwise
    • isIncludeLocation

      boolean isIncludeLocation()
      Returns whether the instrumented LoggerConfig is configured to include location.
      Returns:
      whether location should be passed downstream
    • getFilter

      String getFilter()
      Returns a string description of all filters configured for the instrumented LoggerConfig.
      Returns:
      a string description of all configured filters for this LoggerConfig
    • getAppenderRefs

      String[] getAppenderRefs()
      Returns a String array with the appender refs configured for the instrumented LoggerConfig.
      Returns:
      the appender refs for the instrumented LoggerConfig.