@Plugin(name="PatternLayout", category="Core", elementType="layout", printObject=true) public final class PatternLayout extends AbstractStringLayout
The goal of this class is to format
a LogEvent
and
return the results. The format of the result depends on the conversion pattern.
The conversion pattern is closely related to the conversion pattern of the printf function in C. A conversion pattern is composed of literal text and format control expressions called conversion specifiers.
See the Log4j Manual for details on the supported pattern converters.
Modifier and Type | Class and Description |
---|---|
static class |
PatternLayout.Builder
Custom PatternLayout builder.
|
Modifier and Type | Field and Description |
---|---|
static String |
DEFAULT_CONVERSION_PATTERN
Default pattern string for log output.
|
static String |
KEY
Key to identify pattern converters.
|
static String |
SIMPLE_CONVERSION_PATTERN
A simple pattern.
|
static String |
TTCC_CONVERSION_PATTERN
A conversion pattern equivalent to the TTCCCLayout.
|
footer, header, LOGGER
ELEMENT_TYPE
Modifier and Type | Method and Description |
---|---|
static PatternLayout |
createDefaultLayout()
Creates a PatternLayout using the default options.
|
static PatternLayout |
createLayout(String pattern,
Configuration config,
RegexReplacement replace,
Charset charset,
boolean alwaysWriteExceptions,
boolean noConsoleNoAnsi,
String header,
String footer)
Create a pattern layout.
|
static PatternParser |
createPatternParser(Configuration config)
Create a PatternParser.
|
Map<String,String> |
getContentFormat()
Gets this PatternLayout's content format.
|
String |
getConversionPattern()
Gets the conversion pattern.
|
byte[] |
getFooter()
Returns the footer, if one is available.
|
byte[] |
getHeader()
Returns the header, if one is available.
|
static PatternLayout.Builder |
newBuilder()
Creates a builder for a custom PatternLayout.
|
String |
toSerializable(LogEvent event)
Formats a logging event to a writer.
|
String |
toString() |
getBytes, getCharset, getContentType, toByteArray
public static final String DEFAULT_CONVERSION_PATTERN
public static final String TTCC_CONVERSION_PATTERN
public static final String SIMPLE_CONVERSION_PATTERN
public static final String KEY
public byte[] getHeader()
AbstractLayout
public byte[] getFooter()
AbstractLayout
public String getConversionPattern()
public Map<String,String> getContentFormat()
getContentFormat
in interface Layout<String>
getContentFormat
in class AbstractLayout<String>
public String toSerializable(LogEvent event)
event
- logging event to be formatted.public static PatternParser createPatternParser(Configuration config)
config
- The Configuration.@PluginFactory public static PatternLayout createLayout(@PluginAttribute(value="pattern",defaultString="%m%n") String pattern, @PluginConfiguration Configuration config, @PluginElement(value="Replace") RegexReplacement replace, @PluginAttribute(value="charset",defaultString="UTF-8") Charset charset, @PluginAttribute(value="alwaysWriteExceptions",defaultBoolean=true) boolean alwaysWriteExceptions, @PluginAttribute(value="noConsoleNoAnsi",defaultBoolean=false) boolean noConsoleNoAnsi, @PluginAttribute(value="header") String header, @PluginAttribute(value="footer") String footer)
pattern
- The pattern. If not specified, defaults to DEFAULT_CONVERSION_PATTERN.config
- The Configuration. Some Converters require access to the Interpolator.replace
- A Regex replacement String.charset
- The character set.alwaysWriteExceptions
- If "true"
(default) exceptions are always written even if the pattern contains no exception tokens.noConsoleNoAnsi
- If "true"
(default is false) and System.console()
is null, do not output ANSI escape codesheader
- The footer to place at the top of the document, once.footer
- The footer to place at the bottom of the document, once.public static PatternLayout createDefaultLayout()
Default conversion pattern
@PluginBuilderFactory public static PatternLayout.Builder newBuilder()
Copyright © 1999-2021 Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.