Class ScriptPatternSelector
- java.lang.Object
-
- org.apache.logging.log4j.core.layout.ScriptPatternSelector
-
- All Implemented Interfaces:
LocationAware
,PatternSelector
@Plugin(name="ScriptPatternSelector", category="Core", elementType="patternSelector", printObject=true) public class ScriptPatternSelector extends java.lang.Object implements PatternSelector, LocationAware
Selects the pattern to use based on the result of executing a Script. The returned value will be used as the "key" to choose between one of the configured patterns. If no key is returned or there is no match the default pattern will be used.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ScriptPatternSelector.Builder
Custom ScriptPatternSelector builder.
-
Field Summary
Fields Modifier and Type Field Description private Configuration
configuration
private PatternFormatter[]
defaultFormatters
private java.lang.String
defaultPattern
private java.util.Map<java.lang.String,PatternFormatter[]>
formatterMap
private static Logger
LOGGER
private java.util.Map<java.lang.String,java.lang.String>
patternMap
private boolean
requiresLocation
private AbstractScript
script
-
Fields inherited from interface org.apache.logging.log4j.core.layout.PatternSelector
ELEMENT_TYPE
-
-
Constructor Summary
Constructors Constructor Description ScriptPatternSelector(AbstractScript script, PatternMatch[] properties, java.lang.String defaultPattern, boolean alwaysWriteExceptions, boolean disableAnsi, boolean noConsoleNoAnsi, Configuration config)
Deprecated.UsenewBuilder()
instead.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static ScriptPatternSelector
createSelector(AbstractScript script, PatternMatch[] properties, java.lang.String defaultPattern, boolean alwaysWriteExceptions, boolean noConsoleNoAnsi, Configuration configuration)
Deprecated.UsenewBuilder()
instead.PatternFormatter[]
getFormatters(LogEvent event)
static ScriptPatternSelector.Builder
newBuilder()
Creates a builder for a custom ScriptPatternSelector.boolean
requiresLocation()
java.lang.String
toString()
-
-
-
Field Detail
-
formatterMap
private final java.util.Map<java.lang.String,PatternFormatter[]> formatterMap
-
patternMap
private final java.util.Map<java.lang.String,java.lang.String> patternMap
-
defaultFormatters
private final PatternFormatter[] defaultFormatters
-
defaultPattern
private final java.lang.String defaultPattern
-
LOGGER
private static Logger LOGGER
-
script
private final AbstractScript script
-
configuration
private final Configuration configuration
-
requiresLocation
private final boolean requiresLocation
-
-
Constructor Detail
-
ScriptPatternSelector
@Deprecated public ScriptPatternSelector(AbstractScript script, PatternMatch[] properties, java.lang.String defaultPattern, boolean alwaysWriteExceptions, boolean disableAnsi, boolean noConsoleNoAnsi, Configuration config)
Deprecated.UsenewBuilder()
instead. This will be private in a future version.
-
-
Method Detail
-
requiresLocation
public boolean requiresLocation()
- Specified by:
requiresLocation
in interfaceLocationAware
-
getFormatters
public PatternFormatter[] getFormatters(LogEvent event)
- Specified by:
getFormatters
in interfacePatternSelector
-
newBuilder
@PluginBuilderFactory public static ScriptPatternSelector.Builder newBuilder()
Creates a builder for a custom ScriptPatternSelector.- Returns:
- a ScriptPatternSelector builder.
-
createSelector
@Deprecated public static ScriptPatternSelector createSelector(AbstractScript script, PatternMatch[] properties, java.lang.String defaultPattern, boolean alwaysWriteExceptions, boolean noConsoleNoAnsi, Configuration configuration)
Deprecated.UsenewBuilder()
instead.Deprecated, usenewBuilder()
instead.- Parameters:
script
-properties
-defaultPattern
-alwaysWriteExceptions
-noConsoleNoAnsi
-configuration
-- Returns:
- a new ScriptPatternSelector
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-