Log4j Pattern Layout

From NovaOrdis Knowledge Base
Revision as of 20:26, 15 November 2017 by Ovidiu (talk | contribs) (→‎'n'=)
Jump to navigation Jump to search

External

Internal

Overview

The pattern layout is defined by a conversion pattern string.

Conversion Pattern

The conversion pattern string specifies the various elements of a log event and the way they are intended to be displayed in a log file. The conversion pattern is closely related to the conversion pattern of the printf function in C. The conversion pattern is composed of:

There is no explicit separator between literal text and conversion specifiers. The pattern parser knows when it has reached the end of a conversion specifier when it reads a conversion character.

Literal Text

Literal text may include special characters (\t, \n \r \f). '\\' can be used to insert a backslash in the output.

Conversion Specifier

Each conversion specifier starts with a percent sign ('%') and it is followed by an optional format modifier and a mandatory conversion character:

%-5c

Format Modifier

A format modifier modifies how the data generated by the conversion specifier is displayed: field with, padding and justification.

Conversion Character

The conversion character specifies the type of data.

'c' Category (or Logger)

c{precision}

'd' Date

d

'm' Message

Application supplied message associated with this log event.

m

'n'

Platform dependent line separator.

n

'p' Level

The level of the logging event:

p

't' Thread Name

t

Throwable Handling

If the pattern string does not contain a specifier to handle a Throwable being logged, parsing of the pattern will act as if the "%xEx" specifier had been added to the end of the string. To suppress formatting of the Throwable completely, simply add "%ex{0}" as a specifier in the pattern string.