Class JmxRuntimeInputArgumentsLookup

java.lang.Object
org.apache.logging.log4j.core.lookup.MapLookup
org.apache.logging.log4j.core.lookup.JmxRuntimeInputArgumentsLookup
All Implemented Interfaces:
StrLookup

@Plugin(name="jvmrunargs", category="Lookup") public class JmxRuntimeInputArgumentsLookup extends MapLookup
Maps JVM input arguments (but not main arguments) using JMX to acquire JVM arguments.
Since:
2.1
See Also:
  • Field Details

  • Constructor Details

    • JmxRuntimeInputArgumentsLookup

      public JmxRuntimeInputArgumentsLookup()
      Constructor when used directly as a plugin.
    • JmxRuntimeInputArgumentsLookup

      public JmxRuntimeInputArgumentsLookup(Map<String,String> map)
  • Method Details

    • lookup

      public String lookup(LogEvent ignored, String key)
      Description copied from interface: StrLookup
      Looks up a String key to a String value possibly using the current LogEvent.

      The internal implementation may use any mechanism to return the value. The simplest implementation is to use a Map. However, virtually any implementation is possible.

      For example, it would be possible to implement a lookup that used the key as a primary key, and looked up the value on demand from the database Or, a numeric based implementation could be created that treats the key as an integer, increments the value and return the result as a string - converting 1 to 2, 15 to 16 etc.

      This method always returns a String, regardless of the underlying data, by converting it as necessary. For example:

       Map<String, Object> map = new HashMap<String, Object>();
       map.put("number", new Integer(2));
       assertEquals("2", StrLookup.mapLookup(map).lookup("number"));
       
      Specified by:
      lookup in interface StrLookup
      Overrides:
      lookup in class MapLookup
      Parameters:
      ignored - The current LogEvent.
      key - the key to be looked up, may be null
      Returns:
      the matching value, null if no match