Class Interpolator
- java.lang.Object
-
- org.apache.logging.log4j.core.lookup.AbstractLookup
-
- org.apache.logging.log4j.core.lookup.AbstractConfigurationAwareLookup
-
- org.apache.logging.log4j.core.lookup.Interpolator
-
- All Implemented Interfaces:
ConfigurationAware
,StrLookup
public class Interpolator extends AbstractConfigurationAwareLookup
Proxies all the otherStrLookup
s.
-
-
Field Summary
Fields Modifier and Type Field Description private StrLookup
defaultLookup
private static Logger
LOGGER
private static java.lang.String
LOOKUP_KEY_DOCKER
private static java.lang.String
LOOKUP_KEY_JNDI
private static java.lang.String
LOOKUP_KEY_JVMRUNARGS
private static java.lang.String
LOOKUP_KEY_KUBERNETES
private static java.lang.String
LOOKUP_KEY_SPRING
private static java.lang.String
LOOKUP_KEY_WEB
static char
PREFIX_SEPARATOR
Constant for the prefix separator.private java.util.Map<java.lang.String,StrLookup>
strLookupMap
-
Fields inherited from class org.apache.logging.log4j.core.lookup.AbstractConfigurationAwareLookup
configuration
-
-
Constructor Summary
Constructors Constructor Description Interpolator()
Create the default Interpolator using only Lookups that work without an event.Interpolator(java.util.Map<java.lang.String,java.lang.String> properties)
Creates the Interpolator using only Lookups that work without an event and initial properties.Interpolator(StrLookup defaultLookup)
Interpolator(StrLookup defaultLookup, java.util.List<java.lang.String> pluginPackages)
Constructs an Interpolator using a given StrLookup and a list of packages to find Lookup plugins in.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Map<java.lang.String,StrLookup>
getStrLookupMap()
private void
handleError(java.lang.String lookupKey, java.lang.Throwable t)
java.lang.String
lookup(LogEvent event, java.lang.String var)
Resolves the specified variable.java.lang.String
toString()
-
Methods inherited from class org.apache.logging.log4j.core.lookup.AbstractConfigurationAwareLookup
setConfiguration
-
Methods inherited from class org.apache.logging.log4j.core.lookup.AbstractLookup
lookup
-
-
-
-
Field Detail
-
PREFIX_SEPARATOR
public static final char PREFIX_SEPARATOR
Constant for the prefix separator.- See Also:
- Constant Field Values
-
LOOKUP_KEY_WEB
private static final java.lang.String LOOKUP_KEY_WEB
- See Also:
- Constant Field Values
-
LOOKUP_KEY_DOCKER
private static final java.lang.String LOOKUP_KEY_DOCKER
- See Also:
- Constant Field Values
-
LOOKUP_KEY_KUBERNETES
private static final java.lang.String LOOKUP_KEY_KUBERNETES
- See Also:
- Constant Field Values
-
LOOKUP_KEY_SPRING
private static final java.lang.String LOOKUP_KEY_SPRING
- See Also:
- Constant Field Values
-
LOOKUP_KEY_JNDI
private static final java.lang.String LOOKUP_KEY_JNDI
- See Also:
- Constant Field Values
-
LOOKUP_KEY_JVMRUNARGS
private static final java.lang.String LOOKUP_KEY_JVMRUNARGS
- See Also:
- Constant Field Values
-
LOGGER
private static final Logger LOGGER
-
strLookupMap
private final java.util.Map<java.lang.String,StrLookup> strLookupMap
-
defaultLookup
private final StrLookup defaultLookup
-
-
Constructor Detail
-
Interpolator
public Interpolator(StrLookup defaultLookup)
-
Interpolator
public Interpolator(StrLookup defaultLookup, java.util.List<java.lang.String> pluginPackages)
Constructs an Interpolator using a given StrLookup and a list of packages to find Lookup plugins in.- Parameters:
defaultLookup
- the default StrLookup to use as a fallbackpluginPackages
- a list of packages to scan for Lookup plugins- Since:
- 2.1
-
Interpolator
public Interpolator()
Create the default Interpolator using only Lookups that work without an event.
-
Interpolator
public Interpolator(java.util.Map<java.lang.String,java.lang.String> properties)
Creates the Interpolator using only Lookups that work without an event and initial properties.
-
-
Method Detail
-
getStrLookupMap
public java.util.Map<java.lang.String,StrLookup> getStrLookupMap()
-
handleError
private void handleError(java.lang.String lookupKey, java.lang.Throwable t)
-
lookup
public java.lang.String lookup(LogEvent event, java.lang.String var)
Resolves the specified variable. This implementation will try to extract a variable prefix from the given variable name (the first colon (':') is used as prefix separator). It then passes the name of the variable with the prefix stripped to the lookup object registered for this prefix. If no prefix can be found or if the associated lookup object cannot resolve this variable, the default lookup object will be used.- Parameters:
event
- The current LogEvent or null.var
- the name of the variable whose value is to be looked up- Returns:
- the value of this variable or null if it cannot be resolved
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-