Class HtmlLayout
java.lang.Object
org.apache.logging.log4j.core.layout.AbstractLayout<String>
org.apache.logging.log4j.core.layout.AbstractStringLayout
org.apache.logging.log4j.core.layout.HtmlLayout
- All Implemented Interfaces:
LocationAware
,Layout<String>
,Encoder<LogEvent>
,StringLayout
@Plugin(name="HtmlLayout",
category="Core",
elementType="layout",
printObject=true)
public final class HtmlLayout
extends AbstractStringLayout
Outputs events as rows in an HTML table on an HTML page.
Appenders using this layout should have their encoding set to UTF-8 or UTF-16, otherwise events containing non ASCII characters could result in corrupted log files.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static enum
Possible font sizesNested classes/interfaces inherited from class org.apache.logging.log4j.core.layout.AbstractStringLayout
AbstractStringLayout.Serializer, AbstractStringLayout.Serializer2
-
Field Summary
Fields inherited from class org.apache.logging.log4j.core.layout.AbstractStringLayout
DEFAULT_STRING_BUILDER_SIZE, MAX_STRING_BUILDER_SIZE
Fields inherited from class org.apache.logging.log4j.core.layout.AbstractLayout
configuration, eventCount, footer, header, LOGGER
Fields inherited from interface org.apache.logging.log4j.core.Layout
ELEMENT_TYPE
-
Method Summary
Modifier and TypeMethodDescriptionstatic HtmlLayout
Creates an HTML Layout using the default settings.static HtmlLayout
createLayout
(boolean locationInfo, String title, String contentType, Charset charset, String fontSize, String font) Deprecated.Returns the content type output by this layout.byte[]
Returns the appropriate HTML footers.byte[]
Returns appropriate HTML headers.getTitle()
For testing purposes.boolean
For testing purposes.static HtmlLayout.Builder
boolean
toSerializable
(LogEvent event) Formats as a String.Methods inherited from class org.apache.logging.log4j.core.layout.AbstractStringLayout
getBytes, getCharset, getFooterSerializer, getHeaderSerializer, getStringBuilder, getStringBuilderEncoder, serializeToBytes, serializeToString, toByteArray, trimToMaxSize
Methods inherited from class org.apache.logging.log4j.core.layout.AbstractLayout
encode, getConfiguration, getContentFormat, markEvent
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.logging.log4j.core.Layout
getContentFormat
-
Field Details
-
DEFAULT_FONT_FAMILY
Default font family: "arial,sans-serif".- See Also:
-
-
Method Details
-
getTitle
For testing purposes. -
isLocationInfo
public boolean isLocationInfo()For testing purposes. -
requiresLocation
public boolean requiresLocation()- Specified by:
requiresLocation
in interfaceLocationAware
- Overrides:
requiresLocation
in classAbstractStringLayout
-
toSerializable
Formats as a String.- Parameters:
event
- The Logging Event.- Returns:
- A String containing the LogEvent as HTML.
-
getContentType
Description copied from interface:Layout
Returns the content type output by this layout. The base class returns "text/plain".- Specified by:
getContentType
in interfaceLayout<String>
- Overrides:
getContentType
in classAbstractStringLayout
- Returns:
- The default content type for Strings.
-
getHeader
public byte[] getHeader()Returns appropriate HTML headers.- Specified by:
getHeader
in interfaceLayout<String>
- Overrides:
getHeader
in classAbstractStringLayout
- Returns:
- The header as a byte array.
-
createLayout
@Deprecated @PluginFactory public static HtmlLayout createLayout(@PluginAttribute("locationInfo") boolean locationInfo, @PluginAttribute(value="title",defaultString="Log4j Log Messages") String title, @PluginAttribute("contentType") String contentType, @PluginAttribute(value="charset",defaultString="UTF-8") Charset charset, @PluginAttribute("fontSize") String fontSize, @PluginAttribute(value="fontName",defaultString="arial,sans-serif") String font) Deprecated.Creates an HTML Layout.- Parameters:
locationInfo
- If "true", location information will be included. The default is false.title
- The title to include in the file header. If none is specified the default title will be used.contentType
- The content type. Defaults to "text/html".charset
- The character set to use. If not specified, the default will be used.fontSize
- The font size of the text.font
- The font to use for the text.- Returns:
- An HTML Layout.
-
createDefaultLayout
Creates an HTML Layout using the default settings.- Returns:
- an HTML Layout.
-
newBuilder
-