This is an automated email from the ASF dual-hosted git repository.
git-site-role pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/logging-site.git
The following commit(s) were added to refs/heads/asf-staging by this push:
new 33d3b65d Automatic Site Publish by Buildbot
33d3b65d is described below
commit 33d3b65da81e03377fb34eab7ffec6adef7b08e1
Author: buildbot <[email protected]>
AuthorDate: Thu May 9 16:53:12 2024 +0000
Automatic Site Publish by Buildbot
---
content/feed.xml | 2 +-
content/xml/ns/log4j-config-2.23.1.xsd | 120 +++++++++++++++++++--------------
2 files changed, 72 insertions(+), 50 deletions(-)
diff --git a/content/feed.xml b/content/feed.xml
index 2fe0bd3e..e662bfad 100644
--- a/content/feed.xml
+++ b/content/feed.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?><feed
xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/"
version="4.2.2">Jekyll</generator><link href="/feed.xml" rel="self"
type="application/atom+xml" /><link href="/" rel="alternate" type="text/html"
/><updated>2024-05-09T12:01:34+00:00</updated><id>/feed.xml</id><title
type="html">Apache Software Foundation - Logging
Services</title><subtitle>Write an awesome description for your new site here.
You can edit this line in _ [...]
+<?xml version="1.0" encoding="utf-8"?><feed
xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/"
version="4.2.2">Jekyll</generator><link href="/feed.xml" rel="self"
type="application/atom+xml" /><link href="/" rel="alternate" type="text/html"
/><updated>2024-05-09T16:53:11+00:00</updated><id>/feed.xml</id><title
type="html">Apache Software Foundation - Logging
Services</title><subtitle>Write an awesome description for your new site here.
You can edit this line in _ [...]
<p>Today, December 17, 2023 marks a significant milestone for the Apache
Logging Services project,
as we celebrate 20 years since the inception of Log4j 1.
diff --git a/content/xml/ns/log4j-config-2.23.1.xsd
b/content/xml/ns/log4j-config-2.23.1.xsd
index ff757cf7..c65f0aa3 100644
--- a/content/xml/ns/log4j-config-2.23.1.xsd
+++ b/content/xml/ns/log4j-config-2.23.1.xsd
@@ -1,12 +1,21 @@
-<?xml version="1.0" encoding="UTF-8"?><schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:log4j="https://logging.apache.org/xml/ns" elementFormDefault="qualified"
targetNamespace="https://logging.apache.org/xml/ns"
version="2.24.0-SNAPSHOT"><element
type="log4j:org.apache.logging.log4j.core.config.Configuration"
name="Configuration"/><simpleType
name="com.conversantmedia.util.concurrent.SpinPolicy"><restriction
base="string"><enumeration value="WAITING"></enumeration><enumeration valu [...]
+<?xml version="1.0" encoding="UTF-8"?><schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:log4j="https://logging.apache.org/xml/ns" elementFormDefault="qualified"
targetNamespace="https://logging.apache.org/xml/ns"
version="2.24.0-SNAPSHOT"><element
type="log4j:org.apache.logging.log4j.core.config.Configuration"
name="Configuration"/><simpleType
name="com.conversantmedia.util.concurrent.SpinPolicy"><restriction
base="string"><enumeration value="WAITING"></enumeration><enumeration valu [...]
+
+In this class, order of apiref:org.apache.logging.log4j.Level[] is log4j1 way,
i.e., apiref:org.apache.logging.log4j.Level#ALL[] and
apiref:org.apache.logging.log4j.Level#OFF[] have minimum and maximum order,
respectively.
+(see: LOG4J2-2315)</documentation></annotation></complexType><complexType
name="org.apache.log4j.builders.filter.StringMatchFilterBuilder"><annotation><documentation>Build
a String match filter.</documentation></annotation></complexType><complexType
name="org.apache.log4j.builders.layout.HtmlLayoutBuilder"><annotation><documentation>Build
a Pattern Layout</documentation></annotation></complexType><group
name="org.apache.log4j.builders.layout.LayoutBuilder"><annotation><documentation>Defi
[...]
+
+Provided for compatibility with existing Log4j 1 configurations.
+Originally developed by Ceki Glc and Anders
Kristensen.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Layout"
minOccurs="0"></group></sequence><attribute name="facility"
type="log4j:org.apache.logging.log4j.core.net.Facility"></attribute><attribute
name="facilityPrinting" type="boolean"></attribute><attribute name="footer"
type="string"></attribute><attribute name="header"
type="boolean"></attribute></complexType><complexType name="org.apache.log4j
[...]
+
+Provided for compatibility with existing Log4j 1 configurations.
+Originally developed by Ceki Glc, Mathias
Bogaert.</documentation></annotation><attribute name="locationInfo"
type="boolean"></attribute><attribute name="properties"
type="boolean"></attribute></complexType><complexType
name="org.apache.log4j.pattern.Log4j1LevelPatternConverter"><annotation><documentation>Outputs
the Log4j 1.x level
name.</documentation></annotation></complexType><complexType
name="org.apache.log4j.pattern.Log4j1MdcPatternConverter"><annotation><documentation>Able
to han [...]
NOTE: The Log4j API supports custom levels, the following list contains only
the standard ones.</documentation></annotation><restriction
base="string"><enumeration value="OFF"><annotation><documentation>Special level
that disables logging.
-No events should be logged at this
level.</documentation></annotation></enumeration><enumeration
value="FATAL"><annotation><documentation>A fatal event that will prevent the
application from
continuing</documentation></annotation></enumeration><enumeration
value="ERROR"><annotation><documentation>An error in the application, possibly
recoverable</documentation></annotation></enumeration><enumeration
value="WARN"><annotation><documentation>An event that might possible lead to an
error</do [...]
+No events should be logged at this
level.</documentation></annotation></enumeration><enumeration
value="FATAL"><annotation><documentation>A fatal event that will prevent the
application from
continuing</documentation></annotation></enumeration><enumeration
value="ERROR"><annotation><documentation>An error in the application, possibly
recoverable</documentation></annotation></enumeration><enumeration
value="WARN"><annotation><documentation>An event that might possible lead to an
error</do [...]
Addresses without a port (or port set to 0) will use the default Cassandra
port (9042).</documentation></annotation></element></sequence><attribute
name="batchType"
type="log4j:com.datastax.driver.core.BatchStatement.Type"><annotation><documentation>If
batch statements are enabled, use this type of batch
statement.</documentation></annotation></attribute><attribute name="batched"
type="boolean"><annotation><documentation>Whether or not to use batch
statements when inserting records.</doc [...]
Can be used with or without batch
statements.</documentation></annotation></attribute><attribute
name="clusterName" type="string"></attribute><attribute name="ignoreExceptions"
type="boolean"></attribute><attribute name="keyspace"
type="string"></attribute><attribute name="name"
type="string"></attribute><attribute name="password"
type="string"></attribute><attribute name="table"
type="string"></attribute><attribute name="useClockForTimestampGenerator"
type="boolean"><annotation><documen [...]
-Wraps a
apiref:org.apache.logging.log4j.core.LifeCycle.State[].</documentation></annotation><choice><element
name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="CountingNoOp"
type="log4j:org.apache.logging.log4j.core.appender.CountingNoOpAppender"/><element
name= [...]
+Wraps a
apiref:org.apache.logging.log4j.core.LifeCycle.State[].</documentation></annotation><choice><element
name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="CountingNoOp"
type="log4j:org.apache.logging.log4j.core.appender.CountingNoOpAppender"/><element
name= [...]
An Appender can contain a apiref:org.apache.logging.log4j.core.Layout[] if
applicable as well as an apiref:org.apache.logging.log4j.core.ErrorHandler[].
Typical Appender implementations coordinate with an implementation of
apiref:org.apache.logging.log4j.core.appender.AbstractManager[] to handle
external resources such as streams, connections, and other shared state.
As Appenders are plugins, concrete implementations need to be annotated with
apiref:org.apache.logging.log4j.core.config.plugins.Plugin[] and need to
provide a static factory method annotated with
apiref:org.apache.logging.log4j.core.config.plugins.PluginFactory[].
@@ -15,12 +24,12 @@ Most core plugins are written using a related Manager class
that handle the actu
For instance, many Appenders can take advantage of the
apiref:org.apache.logging.log4j.core.appender.OutputStreamManager[] class.
It is recommended that Appenders don't do any heavy lifting since there can be
many instances of the class being used at any given time.
-When resources require locking (e.g., through
apiref:org.apache.logging.log4j.core.java.nio.channels.FileLock[]), it is
important to isolate synchronized code to prevent concurrency
issues.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console" type="log4j:org.apache.logging.log4j.core.appender.ConsoleAp
[...]
+When resources require locking (e.g., through
apiref:org.apache.logging.log4j.core.java.nio.channels.FileLock[]), it is
important to isolate synchronized code to prevent concurrency
issues.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console" type="log4j:org.apache.logging.log4j.core.appender.ConsoleAp
[...]
It is highly recommended that applications make use of the Filters provided
with this implementation before creating their own.
This interface supports "global" filters (i.e. - all events must pass through
them first), attached to specific loggers and associated with Appenders.
-It is recommended that, where possible, Filter implementations create a
generic filtering method that can be called from any of the filter
methods.</documentation></annotation><choice><element name="BurstFilter"
type="log4j:org.apache.logging.log4j.core.filter.BurstFilter"/><element
name="filters"
type="log4j:org.apache.logging.log4j.core.filter.CompositeFilter"/><element
name="DenyAllFilter"
type="log4j:org.apache.logging.log4j.core.filter.DenyAllFilter"/><element
name="DynamicThreshold [...]
+It is recommended that, where possible, Filter implementations create a
generic filtering method that can be called from any of the filter
methods.</documentation></annotation><choice><element name="BurstFilter"
type="log4j:org.apache.logging.log4j.core.filter.BurstFilter"/><element
name="Filters"
type="log4j:org.apache.logging.log4j.core.filter.CompositeFilter"/><element
name="DenyAllFilter"
type="log4j:org.apache.logging.log4j.core.filter.DenyAllFilter"/><element
name="DynamicThreshold [...]
The formats are:
@@ -29,35 +38,35 @@ The formats are:
* apiref:java.lang.String[]
* apiref:org.apache.logging.log4j.core.LogEvent[]
-Since 2.6, Layouts can
apiref:org.apache.logging.log4j.core.layout.Encoder#encode(Object,ByteBufferDestination)[encode]
a `LogEvent` directly to a
apiref:org.apache.logging.log4j.core.layout.ByteBufferDestination[] without
creating temporary intermediary
objects.</documentation></annotation><choice><element name="CsvLogEventLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvLogEventLayout"/><element
name="CsvParameterLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvPa [...]
+Since 2.6, Layouts can
apiref:org.apache.logging.log4j.core.layout.Encoder#encode(Object,ByteBufferDestination)[encode]
a `LogEvent` directly to a
apiref:org.apache.logging.log4j.core.layout.ByteBufferDestination[] without
creating temporary intermediary
objects.</documentation></annotation><choice><element name="Log4j1SyslogLayout"
type="log4j:org.apache.log4j.layout.Log4j1SyslogLayout"/><element
name="Log4j1XmlLayout"
type="log4j:org.apache.log4j.layout.Log4j1XmlLayout"/><element name= [...]
In Log4j, the main interface for handling the life cycle context of an object
is this one.
An object first starts in the
apiref:org.apache.logging.log4j.core.State#INITIALIZED[] state by default to
indicate the class has been loaded.
From here, calling the
apiref:org.apache.logging.log4j.core.LifeCycle#start()[] method will change
this state to apiref:org.apache.logging.log4j.core.State#STARTING[]. After
successfully being started, this state is changed to
apiref:org.apache.logging.log4j.core.State#STARTED[]. When the
apiref:org.apache.logging.log4j.core.LifeCycle#stop()[] is called, this goes
into the apiref:org.apache.logging.log4j.core.State#STOPPING[] state.
After successfully being stopped, this goes into the
apiref:org.apache.logging.log4j.core.State#STOPPED[] state.
-In most circumstances, implementation classes should store their
apiref:org.apache.logging.log4j.core.State[] in a `volatile` field or inside an
apiref:org.apache.logging.log4j.core.java.util.concurrent.atomic.AtomicReference[]
dependent on synchronization and concurrency
requirements.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async" type="log4j:org.apache.logging.log4j.core.appender.Asy [...]
+In most circumstances, implementation classes should store their
apiref:org.apache.logging.log4j.core.State[] in a `volatile` field or inside an
apiref:org.apache.logging.log4j.core.java.util.concurrent.atomic.AtomicReference[]
dependent on synchronization and concurrency
requirements.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async" type="log4j:org.apache.logging.log4j.core.appender.Asy [...]
-This interface should be merged with the super-interface in
3.0.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="CountingNoOp"
type="log4j:org.apache.logging.log4j.core.appender.CountingNoOpAppender"/><element
name [...]
+This interface should be merged with the super-interface in
3.0.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="CountingNoOp"
type="log4j:org.apache.logging.log4j.core.appender.CountingNoOpAppender"/><element
name [...]
-Although Appenders do not have to extend this class, doing so will simplify
their implementation.</documentation></annotation><choice><element
name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="CountingNoOp" type="log4j:org.apache.logging.log4j.core.appender.Cou [...]
+Although Appenders do not have to extend this class, doing so will simplify
their implementation.</documentation></annotation><choice><element
name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="CountingNoOp" type="log4j:org.apache.logging.log4j.core.appender.Cou [...]
The stream encoding is defined in the
layout.</documentation></annotation><choice><element name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="File"
type="log4j:org.apache.logging.log4j.core.appender.FileAppender"/><element
name="MemoryMappedFile"
type="log4j:org.apache.logging.log4j.core.appender.MemoryMappedFileAppender"/><element
name="OutputStream"
type="log4j:org.apache.logging.log4j.core.appender.OutputStreamAppender"/><element
name="R [...]
You can configure an AsyncAppender with one or more Appenders and an Appender
to append to if the queue is full.
-The AsyncAppender does not allow a filter to be specified on the Appender
references.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.async.BlockingQueueFactory"
minOccurs="0"></group><element name="AppenderRef"
type="log4j:org.apache.logging.log4j.core.config.AppenderRef"
maxOccurs="unbounded"></element><element name="property"
type="log4j:org.apache.logging.log4j.core.con [...]
+The AsyncAppender does not allow a filter to be specified on the Appender
references.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.async.BlockingQueueFactory"
minOccurs="0"></group><element name="AppenderRef"
type="log4j:org.apache.logging.log4j.core.config.AppenderRef"
maxOccurs="unbounded"></element><element name="Property"
type="log4j:org.apache.logging.log4j.core.con [...]
The default target is `System. out`.
TODO Accessing `System. out` or `System. err` as a byte stream instead of a
writer bypasses the JVM's knowledge of the proper encoding.
(RG) Encoding is handled within the Layout.
Typically, a Layout will generate a String and then call getBytes which may
use a configured encoding or the system default.
-OTOH, a Writer cannot print byte
streams.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element></sequence><attribute
name="bufferSize" type="int"></attribute><attribute name="bufferedIo"
type="boolean"></attribute><attrib [...]
+OTOH, a Writer cannot print byte
streams.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="Property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element></sequence><attribute
name="bufferSize" type="int"></attribute><attribute name="bufferedIo"
type="boolean"></attribute><attrib [...]
-Hopefully it is obvious that the Appenders must be configured to not suppress
exceptions for the FailoverAppender to
work.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter"
minOccurs="0"><annotation><documentation>A Filter
(optional).</documentation></annotation></group></sequence><attribute
name="ignoreExceptions" type="string"><annotation><documentation>If `"true"`
(default) exceptions encountered when appending events are logged; otherwise t
[...]
+Hopefully it is obvious that the Appenders must be configured to not suppress
exceptions for the FailoverAppender to
work.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter"
minOccurs="0"><annotation><documentation>A Filter
(optional).</documentation></annotation></group></sequence><attribute
name="ignoreExceptions" type="string"><annotation><documentation>If `"true"`
(default) exceptions encountered when appending events are logged; otherwise t
[...]
Use for compatibility with version 1.2 and handy for composing a
apiref:org.apache.logging.log4j.core.appender.ScriptAppenderSelector[].</documentation></annotation><attribute
name="name" type="string"></attribute></complexType><complexType
name="org.apache.logging.log4j.core.appender.OutputStreamAppender"><annotation><documentation>Appends
log events to a given output stream using a layout.
-Character encoding is handled within the
Layout.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element></sequence><attribute
name="bufferSize" type="int"></attribute><attribute name="bufferedIo"
type="boolean"></attribute> [...]
+Character encoding is handled within the
Layout.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="Property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element></sequence><attribute
name="bufferSize" type="int"></attribute><attribute name="bufferedIo"
type="boolean"></attribute> [...]
The number of logging events delivered in this e-mail depend on the value of
*BufferSize* option.
The `SmtpAppender` keeps only the last `BufferSize` logging events in its
cyclic buffer.
@@ -69,7 +78,7 @@ This can be modified by setting a filter for the
appender.</documentation></anno
By default, uses a
apiref:org.apache.logging.log4j.core.filter.ThresholdFilter[] with a level of
ERROR.</documentation></annotation></group><group
ref="log4j:org.apache.logging.log4j.core.Layout"
minOccurs="0"><annotation><documentation>Specifies the layout used for the
email message body.
-By default, this uses the
apiref:org.apache.logging.log4j.core.layout.HtmlLayout#createDefaultLayout()[default
HTML layout].</documentation></annotation></group><element name="property"
type="log4j:org.apache.logging.log4j.core.config.Property" minOccurs="0"
maxOccurs="unbounded"></element><element name="Ssl"
type="log4j:org.apache.logging.log4j.core.net.ssl.SslConfiguration"
minOccurs="0"><annotation><documentation>Specifies an SSL configuration for
smtps connections.</documentation></a [...]
+By default, this uses the
apiref:org.apache.logging.log4j.core.layout.HtmlLayout#createDefaultLayout()[default
HTML layout].</documentation></annotation></group><element name="Property"
type="log4j:org.apache.logging.log4j.core.config.Property" minOccurs="0"
maxOccurs="unbounded"></element><element name="Ssl"
type="log4j:org.apache.logging.log4j.core.net.ssl.SslConfiguration"
minOccurs="0"><annotation><documentation>Specifies an SSL configuration for
smtps connections.</documentation></a [...]
Defaults to .</documentation></annotation></attribute><attribute name="cc"
type="string"><annotation><documentation>Comma-separated list of CC email
addresses.</documentation></annotation></attribute><attribute name="from"
type="string"><annotation><documentation>Email address of the
sender.</documentation></annotation></attribute><attribute
name="ignoreExceptions" type="boolean"></attribute><attribute name="name"
type="string"></attribute><attribute name="replyTo" type="string"><annotat [...]
@@ -77,9 +86,9 @@ Disabled by
default.</documentation></annotation></attribute><attribute name="sm
Defaults to "smtp".</documentation></annotation></attribute><attribute
name="smtpUsername" type="string"><annotation><documentation>Username to
authenticate with SMTP
server.</documentation></annotation></attribute><attribute name="subject"
type="string"><annotation><documentation>Subject template for the email
messages.</documentation></annotation></attribute><attribute name="to"
type="string"><annotation><documentation>Comma-separated list of recipient
email addresses.</documentation>< [...]
-Supports both TCP and UDP.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element><element name="SocketOptions"
type="log4j:org.apache.logging.log4j.core.net.SocketOptions"
minOccurs="0"></element><element name="Ssl" type=" [...]
+Supports both TCP and UDP.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="Property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element><element name="SocketOptions"
type="log4j:org.apache.logging.log4j.core.net.SocketOptions"
minOccurs="0"></element><element name="Ssl" type=" [...]
-Supports both TCP and UDP.</documentation></annotation><choice><element
name="Socket"
type="log4j:org.apache.logging.log4j.core.appender.SocketAppender"/><element
name="Syslog"
type="log4j:org.apache.logging.log4j.core.appender.SyslogAppender"/></choice></group><complexType
name="org.apache.logging.log4j.core.appender.SyslogAppender"><annotation><documentation>The
Syslog Appender.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"> [...]
+Supports both TCP and UDP.</documentation></annotation><choice><element
name="Socket"
type="log4j:org.apache.logging.log4j.core.appender.SocketAppender"/><element
name="Syslog"
type="log4j:org.apache.logging.log4j.core.appender.SyslogAppender"/></choice></group><complexType
name="org.apache.logging.log4j.core.appender.SyslogAppender"><annotation><documentation>The
Syslog Appender.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"> [...]
All database appenders should inherit from this base
appender.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="JDBC"
type="log4j:org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender"/><element
name="JPA"
type="log4j:org.apache.logging.log4j.core.appender.db.jpa.JpaAppender"/><element
name="NoSql"
type="log4j:org.apache.logging.log4j.core.appender.nosql.NoSqlAppender"/></choice></group><
[...]
@@ -106,25 +115,25 @@ If you want to use the
apiref:org.apache.logging.log4j.core.appender.db.jdbc.Jdb
Must start with java:/comp/env or
environment-equivalent.</documentation></annotation></attribute></complexType><complexType
name="org.apache.logging.log4j.core.appender.db.jdbc.DriverManagerConnectionSource"><annotation><documentation>A
apiref:org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource[] that
uses a JDBC connection string, a user name, and a password to call
apiref:java.sql.DriverManager#getConnection(String,String,String)[].
This plugin does not provide any connection pooling unless it is available
through the connection string and driver itself.
-This handy to get you off the ground without having to deal with
JNDI.</documentation></annotation><sequence><element name="property"
type="log4j:org.apache.logging.log4j.core.config.Property" minOccurs="0"
maxOccurs="unbounded"></element></sequence><attribute name="connectionString"
type="string"></attribute><attribute name="driverClassName"
type="string"></attribute><attribute name="password"
type="string"></attribute><attribute name="userName"
type="string"></attribute></complexType>< [...]
+This handy to get you off the ground without having to deal with
JNDI.</documentation></annotation><sequence><element name="Property"
type="log4j:org.apache.logging.log4j.core.config.Property" minOccurs="0"
maxOccurs="unbounded"></element></sequence><attribute name="connectionString"
type="string"></attribute><attribute name="driverClassName"
type="string"></attribute><attribute name="password"
type="string"></attribute><attribute name="userName"
type="string"></attribute></complexType>< [...]
If this method returns a apiref:java.sql.Connection[], it should return a new
connection every
call.</documentation></annotation></attribute></complexType><complexType
name="org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender"><annotation><documentation>This
Appender writes logging events to a relational database using standard JDBC
mechanisms.
It takes a list of
apiref:org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[]s and/or
apiref:org.apache.logging.log4j.core.appender.db.ColumnMapping[]s with which it
determines how to save the event data into the appropriate columns in the table.
ColumnMapping is new as of Log4j 2.8 and supports
apiref:org.apache.logging.log4j.core.config.plugins.convert.TypeConverter[type
conversion] and persistence using
apiref:java.sql.PreparedStatement#setObject(int,Object)[]. A
apiref:org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource[] plugin
instance instructs the appender (and
apiref:org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager[])
how to connect to the database.
-This appender can be reconfigured at run
time.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="ColumnMapping"
type="log4j:org.apache.logging.log4j.core.appender.db.ColumnMapping"
minOccurs="0" maxOccurs="unbounded"></element><element name="Column"
type="log4j:org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig"
minOccurs= [...]
+This appender can be reconfigured at run
time.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="ColumnMapping"
type="log4j:org.apache.logging.log4j.core.appender.db.ColumnMapping"
minOccurs="0" maxOccurs="unbounded"></element><element name="Column"
type="log4j:org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig"
minOccurs= [...]
-The connections are served from an Apache Commons DBCP pooling
driver.</documentation></annotation><sequence><element
name="PoolableConnectionFactory"
type="log4j:org.apache.logging.log4j.core.appender.db.jdbc.PoolableConnectionFactoryConfig"
minOccurs="0"></element><element name="property"
type="log4j:org.apache.logging.log4j.core.config.Property" minOccurs="0"
maxOccurs="unbounded"></element></sequence><attribute name="connectionString"
type="string"></attribute><attribute name="driver [...]
+The connections are served from an Apache Commons DBCP pooling
driver.</documentation></annotation><sequence><element
name="PoolableConnectionFactory"
type="log4j:org.apache.logging.log4j.core.appender.db.jdbc.PoolableConnectionFactoryConfig"
minOccurs="0"></element><element name="Property"
type="log4j:org.apache.logging.log4j.core.config.Property" minOccurs="0"
maxOccurs="unbounded"></element></sequence><attribute name="connectionString"
type="string"></attribute><attribute name="driver [...]
It requires a pre-configured JPA persistence unit and a concrete
implementation of the abstract
apiref:org.apache.logging.log4j.core.appender.db.jpa.AbstractLogEventWrapperEntity[]
class decorated with JPA
annotations.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter"
minOccurs="0"><annotation><documentation>The filter, if any, to
use.</documentation></annotation></group></sequence><attribute
name="bufferSize" type="string"><annotation><documen [...]
This Appender replaces the previous split ones.
-However, configurations set up for the 2.0 version of the JMS appenders will
still work.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element></sequence><attribute
name="destinationBindingName" type="string"></attribute>< [...]
+However, configurations set up for the 2.0 version of the JMS appenders will
still work.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="Property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element></sequence><attribute
name="destinationBindingName" type="string"></attribute>< [...]
-Requires the JeroMQ jar (LGPL as of
0.3.5)</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element></sequence><attribute
name="affinity" type="long"></attribute><attribute name="backlog"
type="long"></attribute><attribute na [...]
+Requires the JeroMQ jar (LGPL as of
0.3.5)</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><element
name="Property" type="log4j:org.apache.logging.log4j.core.config.Property"
minOccurs="0" maxOccurs="unbounded"></element></sequence><attribute
name="affinity" type="long"></attribute><attribute name="backlog"
type="long"></attribute><attribute na [...]
It requires implementations of
apiref:org.apache.logging.log4j.core.appender.nosql.NoSqlObject[],
apiref:org.apache.logging.log4j.core.appender.nosql.NoSqlConnection[], and
apiref:org.apache.logging.log4j.core.appender.nosql.NoSqlProvider[] to "know"
how to write events to the chosen NoSQL database.
-For examples on how to write your own NoSQL provider, see the simple source
code for the MongoDB and CouchDB
providers.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.appender.nosql.NoSqlProvider"
minOccurs="0"><annotation><documentation>Sets the
provider.</documentation></annotation></group><ele [...]
+For examples on how to write your own NoSQL provider, see the simple source
code for the MongoDB and CouchDB
providers.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.appender.nosql.NoSqlProvider"
minOccurs="0"><annotation><documentation>Sets the
provider.</documentation></annotation></group><ele [...]
The DefaultRolloverStrategy is a combination of a time-based policy and a
fixed-window policy.
When the file name pattern contains a date format then the rollover time
interval will be used to calculate the time to use in the file pattern.
@@ -167,8 +176,7 @@ Corresponds to logical
"OR".</documentation></annotation><sequence><group ref="l
If both a regular expression and a glob pattern are specified the glob pattern
is used and the regular expression is ignored.
The regular expression is a pattern as defined by the
apiref:java.util.regex.Pattern[] class.
-A glob is a simplified pattern expression described in
apiref:java.nio.file.FileSystem#getPathMatcher(String)[].</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.appender.rolling.action.PathCondition"
minOccurs="0" maxOccurs="unbounded"><annotation><documentation>nested
conditions to evaluate if this condition accepts a
path</documentation></annotation></group></sequence><attribute name="glob"
type="string"><annotation><documentation>the baseDir-relat [...]
-Must be a valid
Duration.</documentation></annotation></attribute></complexType><complexType
name="org.apache.logging.log4j.core.appender.rolling.action.IfNot"><annotation><documentation>Wrapper
`PathCondition` that accepts objects that are rejected by the wrapped
component filter.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.appender.rolling.action.PathCondition"><annotation><documentation>The
condition to negate.</documentation></annotation></gr [...]
+A glob is a simplified pattern expression described in
apiref:java.nio.file.FileSystem#getPathMatcher(String)[].</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.appender.rolling.action.PathCondition"
minOccurs="0" maxOccurs="unbounded"><annotation><documentation>nested
conditions to evaluate if this condition accepts a
path</documentation></annotation></group></sequence><attribute name="glob"
type="string"><annotation><documentation>the baseDir-relat [...]
Allow to define file permissions, user and group for log files on POSIX
supported OS.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.appender.rolling.action.PathCondition"
minOccurs="0" maxOccurs="unbounded"></group></sequence><attribute
name="basePath" type="string"></attribute><attribute name="fileGroup"
type="string"></attribute><attribute name="fileOwner"
type="string"></attribute><attribute name="filePermissions"
type="string"></attribute><attr [...]
@@ -185,7 +193,7 @@ Can be used to relativize the paths in the pathList.
* any properties declared in the
configuration</documentation></annotation></group></sequence></complexType><complexType
name="org.apache.logging.log4j.core.appender.routing.IdlePurgePolicy"><annotation><documentation>Policy
is purging appenders that were not in use specified time in
minutes</documentation></annotation><attribute name="checkInterval"
type="string"><annotation><documentation>when all appenders purged, the number
of increments of timeUnit to check if any appenders appeared [...]
Routing is achieved by specifying a pattern on the Routing appender
declaration.
-The pattern should contain one or more substitution patterns of the form
"$${[key:]token}". The pattern will be resolved each time the Appender is
called using the built in StrSubstitutor and the StrLookup plugin that matches
the specified key.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.appen [...]
+The pattern should contain one or more substitution patterns of the form
"$${[key:]token}". The pattern will be resolved each time the Appender is
called using the built in StrSubstitutor and the StrLookup plugin that matches
the specified key.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.appen [...]
AsyncLoggerConfig is a logger designed for high throughput and low latency
logging.
It does not perform any I/O in the calling (application) thread, but instead
hands off the work to another thread as soon as possible.
@@ -200,7 +208,7 @@ xml configuration will produce either a "?" character or no
output at all.
For best performance, use AsyncLoggerConfig with the RandomAccessFileAppender
or RollingRandomAccessFileAppender, with immediateFlush=false.
These appenders have built-in support for the batching mechanism used by the
Disruptor library, and they will flush to disk at the end of each batch.
-This means that even with immediateFlush=false, there will never be any items
left in the buffer; all log events will all be written to disk in a very
efficient manner.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><element
name="AppenderRef"
type="log4j:org.apache.logging.log4j.core.config.AppenderRef" minOccurs="0"
maxOccurs="unbounded"></element><element name="property"
type="log4j:org.apache.logging.log4j.core.conf [...]
+This means that even with immediateFlush=false, there will never be any items
left in the buffer; all log events will all be written to disk in a very
efficient manner.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><element
name="AppenderRef"
type="log4j:org.apache.logging.log4j.core.config.AppenderRef" minOccurs="0"
maxOccurs="unbounded"></element><element name="Property"
type="log4j:org.apache.logging.log4j.core.conf [...]
The possible values are:
* `out` for using standard out (default)
@@ -209,7 +217,7 @@ The possible values are:
If the provided value is invalid, then the default destination of standard out
will be used.</documentation></annotation></attribute><attribute name="name"
type="string"><annotation><documentation>Name of the
configuration</documentation></annotation></attribute><attribute
name="monitorInterval" type="int"><annotation><documentation>Number of seconds
between polls for configuration
changes</documentation></annotation></attribute><attribute name="schema"
type="string"><annotation><documen [...]
Possible values are `enable` and `disable`.
-The shutdown hook is enabled by default, unless Log4j detects the presence of
the Servlet API.</documentation></annotation></attribute><attribute
name="shutdownTimeout" type="int"><annotation><documentation>Timeout in
milliseconds of the logger context shut
down</documentation></annotation></attribute><attribute name="status"
type="log4j:org.apache.logging.log4j.Level"><annotation><documentation>Sets the
level of the status logger</documentation></annotation></attribute><attribute
name=" [...]
+The shutdown hook is enabled by default, unless Log4j detects the presence of
the Servlet API.</documentation></annotation></attribute><attribute
name="shutdownTimeout" type="int"><annotation><documentation>Timeout in
milliseconds of the logger context shut
down</documentation></annotation></attribute><attribute name="status"
type="log4j:org.apache.logging.log4j.Level"><annotation><documentation>Sets the
level of the status logger</documentation></annotation></attribute><attribute
name=" [...]
ConfigurationFactory allows the configuration implementation to be dynamically
chosen in 1 of 3 ways:
@@ -222,21 +230,21 @@ The apiref:org.apache.logging.log4j.core.config.Order[]
annotation should be use
See apiref:org.apache.logging.log4j.core.config.xml.XmlConfigurationFactory[]
for an example.
If the ConfigurationFactory that was added returns null on a call to
getConfiguration then any other ConfigurationFactories found as plugins will be
called in their respective order.
-DefaultConfiguration is always called last if no configuration has been
returned.</documentation></annotation><choice><element
name="JsonConfigurationFactory"
type="log4j:org.apache.logging.log4j.core.config.json.JsonConfigurationFactory"/><element
name="PropertiesConfigurationFactory"
type="log4j:org.apache.logging.log4j.core.config.properties.PropertiesConfigurationFactory"/><element
name="XmlConfigurationFactory"
type="log4j:org.apache.logging.log4j.core.config.xml.XmlConfigurationFac [...]
+DefaultConfiguration is always called last if no configuration has been
returned.</documentation></annotation><choice><element
name="Log4j1PropertiesConfigurationFactory"
type="log4j:org.apache.log4j.config.PropertiesConfigurationFactory"/><element
name="Log4j1XmlConfigurationFactory"
type="log4j:org.apache.log4j.xml.XmlConfigurationFactory"/><element
name="JsonConfigurationFactory"
type="log4j:org.apache.logging.log4j.core.config.json.JsonConfigurationFactory"/><element
name="Properties [...]
The supported formats are:
* 0x0123456789ABCDEF
* Base64:ABase64String
* String using apiref:java.nio.charset.Charset#defaultCharset()[] [TODO Should
this be UTF-8 instead?
-]</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.ByteConverter"><annotation><documentation>Converts
a apiref:java.lang.String[] into a
apiref:java.lang.Byte[].</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.CharArrayConverter"><annotation><documentation>Converts
a apiref:java.lang.String[] into a `char[]`.</documentation></ann [...]
+]</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.ByteConverter"><annotation><documentation>Converts
a apiref:java.lang.String[] into a
apiref:java.lang.Byte[].</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.CharArrayConverter"><annotation><documentation>Converts
a apiref:java.lang.String[] into a `char[]`.</documentation></ann [...]
-Returns `null` for invalid level
names.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.LongConverter"><annotation><documentation>Converts
a apiref:java.lang.String[] into a
apiref:java.lang.Long[].</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.PathConverter"><annotation><documentation>Converts
a apiref:java.lang.String[] into [...]
+Returns `null` for invalid level
names.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.LongConverter"><annotation><documentation>Converts
a apiref:java.lang.String[] into a
apiref:java.lang.Long[].</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.config.plugins.convert.TypeConverters.PathConverter"><annotation><documentation>Converts
a apiref:java.lang.String[] into [...]
Filters can be either context wide or attached to an appender.
A filter may choose to support being called only from the context or only from
an appender in which case it will only implement the required method(s). The
rest will default to return
apiref:org.apache.logging.log4j.core.filter.org.apache.logging.log4j.core.Filter.Result#NEUTRAL[].
-Garbage-free note: the methods with unrolled varargs by default delegate to
the apiref:org.apache.logging.log4j.core.filter.AbstractFilter#filter(Logger,
Level, Marker, String, Object...)[filter method with vararg parameters].
Subclasses that want to be garbage-free should override these methods to
implement the appropriate filtering without creating a vararg
array.</documentation></annotation><choice><element name="BurstFilter"
type="log4j:org.apache.logging.log4j.core.filter.BurstFilte [...]
+Garbage-free note: the methods with unrolled varargs by default delegate to
the apiref:org.apache.logging.log4j.core.filter.AbstractFilter#filter(Logger,
Level, Marker, String, Object...)[filter method with vararg parameters].
Subclasses that want to be garbage-free should override these methods to
implement the appropriate filtering without creating a vararg
array.</documentation></annotation><choice><element name="BurstFilter"
type="log4j:org.apache.logging.log4j.core.filter.BurstFilte [...]
Use this filter when you want to control the maximum burst of log statements
that can be sent to an appender.
The filter is configured in the log4j configuration file.
@@ -256,9 +264,9 @@ NEUTRAL.</documentation></annotation></attribute><attribute
name="onMismatch" ty
The default is Result.
DENY.</documentation></annotation></attribute></complexType><complexType
name="org.apache.logging.log4j.core.filter.DynamicThresholdFilter"><annotation><documentation>Compares
against a log level that is associated with a context value.
-By default the context is the apiref:org.apache.logging.log4j.ThreadContext[],
but users may
apiref:org.apache.logging.log4j.core.impl.ContextDataInjectorFactory[configure]
a custom apiref:org.apache.logging.log4j.core.ContextDataInjector[] which
obtains context data from some other
source.</documentation></annotation><sequence><element name="KeyValuePair"
type="log4j:org.apache.logging.log4j.core.util.KeyValuePair" minOccurs="0"
maxOccurs="unbounded"><annotation><documentation>An array [...]
+By default the context is the apiref:org.apache.logging.log4j.ThreadContext[]
and/or the
apiref:org.apache.logging.log4j.core.filter.org.apache.logging.log4j.ScopedContext[],
but users may add a custom
apiref:org.apache.logging.log4j.core.util.ContextDataProvider[] which obtains
context data from some other
source.</documentation></annotation><sequence><element name="KeyValuePair"
type="log4j:org.apache.logging.log4j.core.util.KeyValuePair" minOccurs="0"
maxOccurs="unbounded"><annotation [...]
-Extends apiref:org.apache.logging.log4j.core.LifeCycle[] since filters have a
life cycle.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="CountingNoOp"
type="log4j:org.apache.logging.log4j.core.appender.CountingNoO [...]
+Extends apiref:org.apache.logging.log4j.core.LifeCycle[] since filters have a
life cycle.</documentation></annotation><choice><element name="Cassandra"
type="log4j:org.apache.logging.log4j.cassandra.CassandraAppender"/><element
name="Async"
type="log4j:org.apache.logging.log4j.core.appender.AsyncAppender"/><element
name="Console"
type="log4j:org.apache.logging.log4j.core.appender.ConsoleAppender"/><element
name="CountingNoOp"
type="log4j:org.apache.logging.log4j.core.appender.CountingNoO [...]
Defaults to Result.
NEUTRAL.</documentation></annotation></attribute><attribute name="onMismatch"
type="log4j:org.apache.logging.log4j.core.Filter.Result"><annotation><documentation>Sets
the Result to return when the filter does not match.
@@ -298,11 +306,11 @@ DENY.</documentation></annotation></attribute><attribute
name="text" type="strin
If not "or" the operation will be an
"and".</documentation></annotation></attribute></complexType><complexType
name="org.apache.logging.log4j.core.filter.ThreadContextMapFilter"><annotation><documentation>Filter
based on a value in the Thread Context Map
(MDC).</documentation></annotation><sequence><element name="KeyValuePair"
type="log4j:org.apache.logging.log4j.core.util.KeyValuePair" minOccurs="0"
maxOccurs="unbounded"></element></sequence><attribute name="onMatch"
type="log4j:org.apa [...]
For example, if the ThresholdFilter is configured with Level ERROR and the
LogEvent contains Level DEBUG then the onMismatch value will be returned since
ERROR events are more specific than DEBUG.
-The default Level is ERROR.</documentation></annotation><attribute
name="level"
type="log4j:org.apache.logging.log4j.Level"><annotation><documentation>The log
Level.</documentation></annotation></attribute><attribute name="onMatch"
type="log4j:org.apache.logging.log4j.core.Filter.Result"><annotation><documentation>The
action to take on a match.</documentation></annotation></attribute><attribute
name="onMismatch"
type="log4j:org.apache.logging.log4j.core.Filter.Result"><annotation><docume
[...]
+The default Level is ERROR.</documentation></annotation><attribute
name="level"
type="log4j:org.apache.logging.log4j.Level"><annotation><documentation>The log
Level.</documentation></annotation></attribute><attribute name="onMatch"
type="log4j:org.apache.logging.log4j.core.Filter.Result"><annotation><documentation>The
action to take on a match.</documentation></annotation></attribute><attribute
name="onMismatch"
type="log4j:org.apache.logging.log4j.core.Filter.Result"><annotation><docume
[...]
-Depends on Apache Commons CSV
1.2.</documentation></annotation><choice><element name="CsvLogEventLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvLogEventLayout"/><element
name="CsvParameterLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvParameterLayout"/></choice></group><group
name="org.apache.logging.log4j.core.layout.AbstractJacksonLayout"><choice><element
name="JsonLayout"
type="log4j:org.apache.logging.log4j.core.layout.JsonLayout"/><element
name="XmlLayout" [...]
+Depends on Apache Commons CSV
1.2.</documentation></annotation><choice><element name="CsvLogEventLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvLogEventLayout"/><element
name="CsvParameterLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvParameterLayout"/></choice></group><group
name="org.apache.logging.log4j.core.layout.AbstractJacksonLayout"><choice><element
name="JsonLayout"
type="log4j:org.apache.logging.log4j.core.layout.JsonLayout"/><element
name="XmlLayout" [...]
-Since 2.4.1, this class has custom logic to convert ISO-8859-1 or US-ASCII
Strings to byte[] arrays to improve performance: all characters are simply cast
to bytes.</documentation></annotation><choice><element name="CsvLogEventLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvLogEventLayout"/><element
name="CsvParameterLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvParameterLayout"/><element
name="GelfLayout" type="log4j:org.apache.logging.log4j.core.layout.GelfLay [...]
+Since 2.4.1, this class has custom logic to convert ISO-8859-1 or US-ASCII
Strings to byte[] arrays to improve performance: all characters are simply cast
to bytes.</documentation></annotation><choice><element
name="Log4j1SyslogLayout"
type="log4j:org.apache.log4j.layout.Log4j1SyslogLayout"/><element
name="Log4j1XmlLayout"
type="log4j:org.apache.log4j.layout.Log4j1XmlLayout"/><element
name="CsvLogEventLayout"
type="log4j:org.apache.logging.log4j.core.layout.CsvLogEventLayout"/><element n
[...]
Depends on Apache Commons CSV 1.2.</documentation></annotation><attribute
name="footer" type="string"></attribute><attribute name="format"
type="string"></attribute><attribute name="header"
type="string"></attribute><attribute name="nullString"
type="string"></attribute><attribute name="quoteMode"
type="log4j:org.apache.commons.csv.QuoteMode"></attribute><attribute
name="recordSeparator" type="string"></attribute></complexType><complexType
name="org.apache.logging.log4j.core.layout.CsvPa [...]
@@ -310,7 +318,7 @@ The event message is currently ignored.
Best used with:
-`logger. debug(new ObjectArrayMessage(1, 2, "Bob"));` Depends on Apache
Commons CSV 1.4.</documentation></annotation><attribute name="footer"
type="string"></attribute><attribute name="format"
type="string"></attribute><attribute name="header"
type="string"></attribute><attribute name="nullString"
type="string"></attribute><attribute name="quoteMode"
type="log4j:org.apache.commons.csv.QuoteMode"></attribute><attribute
name="recordSeparator" type="string"></attribute></complexType><group [...]
+`logger. debug(new ObjectArrayMessage(1, 2, "Bob"));` Depends on Apache
Commons CSV 1.4.</documentation></annotation><attribute name="footer"
type="string"></attribute><attribute name="format"
type="string"></attribute><attribute name="header"
type="string"></attribute><attribute name="nullString"
type="string"></attribute><attribute name="quoteMode"
type="log4j:org.apache.commons.csv.QuoteMode"></attribute><attribute
name="recordSeparator" type="string"></attribute></complexType><group [...]
This layout compresses JSON to GZIP or ZLIB (the `compressionType`) if log
event data is larger than 1024 bytes (the `compressionThreshold`). This layout
does not implement chunking.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.layout.PatternSelector"
minOccurs="0"><annotation><documentation>The PatternSelector to use to format
the message.</documentation></annotation></group><element name="KeyValuePair"
type="log4j:org.apache.logging.log4j.core.u [...]
@@ -349,7 +357,7 @@ 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.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.layout.PatternSelector"
minOccurs="0"></group><element name="replace"
type="log4j:org.apache.logging.log4j.core.pattern.RegexReplacement"
minOccurs="0"></element></sequence><attribute name="alwaysWriteExceptions"
type="boolean"></attribute><attribute name="disableAnsi"
type="boolean"></attribute><attribute name="footer" type="string"> [...]
+See the Log4j Manual for details on the supported pattern
converters.</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.layout.PatternSelector"
minOccurs="0"></group><element name="Replace"
type="log4j:org.apache.logging.log4j.core.pattern.RegexReplacement"
minOccurs="0"></element></sequence><attribute name="alwaysWriteExceptions"
type="boolean"></attribute><attribute name="disableAnsi"
type="boolean"></attribute><attribute name="footer" type="string"> [...]
Defaults to "true:.</documentation></annotation></attribute><attribute
name="mdcExcludes" type="string"><annotation><documentation>A comma separated
list of MDC keys that should be excluded from the
LogEvent.</documentation></annotation></attribute><attribute name="mdcId"
type="string"><annotation><documentation>The id to use for the MDC Structured
Data Element.</documentation></annotation></attribute><attribute
name="mdcIncludes" type="string"><annotation><documentation>A comma separate
[...]
The default is false.</documentation></annotation></attribute><attribute
name="newLineEscape" type="string"><annotation><documentation>String that
should be used to replace newlines within the message
text.</documentation></annotation></attribute><attribute
name="useTlsMessageFormat" type="boolean"><annotation><documentation>If true
the message will be formatted according to RFC
5425.</documentation></annotation></attribute></complexType><complexType
name="org.apache.logging.log4j.core.l [...]
@@ -385,13 +393,13 @@ Supports Lookup
expressions.</documentation></annotation><sequence><element name
If "true", includes the stacktrace of any Throwable in the generated data,
defaults to "true".</documentation></annotation></attribute><attribute
name="includeTimeMillis" type="boolean"><annotation><documentation>Whether to
include the timestamp (in addition to the Instant) (optional, default to
false).</documentation></annotation></attribute><attribute name="locationInfo"
type="boolean"></attribute><attribute name="properties"
type="boolean"></attribute><attribute name="stacktraceAsStri [...]
-Handles saving the Configuration.</documentation></annotation><choice><element
name="interpolator_test"
type="log4j:org.apache.logging.log4j.core.lookup.InterpolatorTest.Lookup"/><element
name="log4j"
type="log4j:org.apache.logging.log4j.core.lookup.Log4jLookup"/></choice></group><group
name="org.apache.logging.log4j.core.lookup.AbstractLookup"><annotation><documentation>A
default lookup for others to
extend.</documentation></annotation><choice><element name="env"
type="log4j:org.apache. [...]
+Handles saving the Configuration.</documentation></annotation><choice><element
name="log4j"
type="log4j:org.apache.logging.log4j.core.lookup.Log4jLookup"/></choice></group><group
name="org.apache.logging.log4j.core.lookup.AbstractLookup"><annotation><documentation>A
default lookup for others to
extend.</documentation></annotation><choice><element name="env"
type="log4j:org.apache.logging.log4j.core.lookup.EnvironmentLookup"/><element
name="event" type="log4j:org.apache.logging.log4j.core [...]
-By default this is the apiref:org.apache.logging.log4j.ThreadContext[], but
users may
apiref:org.apache.logging.log4j.core.impl.ContextDataInjectorFactory[configure]
a custom apiref:org.apache.logging.log4j.core.ContextDataInjector[] which
obtains context data from some other
source.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.lookup.DateLookup"><annotation><documentation>Formats
the current date or the date in the LogEvent.
+By default this is the apiref:org.apache.logging.log4j.ThreadContext[] or
apiref:org.apache.logging.log4j.ScopedContext[]. Users may add their own
apiref:org.apache.logging.log4j.core.lookup.org.apache.logging.log4j.core.util.ContextDataProvider[]
which can be retrieved via this
Lookup.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.lookup.DateLookup"><annotation><documentation>Formats
the current date or the date in the LogEvent.
The "key" is used as the format String, following the java.
text.
-SimpleDateFormat date and time pattern
strings.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.lookup.EnvironmentLookup"><annotation><documentation>Looks
up keys from environment
variables.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.lookup.EventLookup"><annotation><documentation>Looks
up values from the log
event.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4 [...]
+SimpleDateFormat date and time pattern
strings.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.lookup.EnvironmentLookup"><annotation><documentation>Looks
up keys from environment
variables.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.lookup.EventLookup"><annotation><documentation>Looks
up values from the log
event.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4 [...]
The passed in "key" should be the value of another
lookup.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.lookup.MainMapLookup"><annotation><documentation>A
map-based lookup for main arguments.
@@ -403,9 +411,9 @@ It has a benefit over a map in that it can create the
result on demand based on
This class comes complete with various factory methods.
If these do not suffice, you can subclass and implement your own matcher.
-For example, it would be possible to implement a lookup that used the key as a
primary key, and looked up the value on demand from the
database</documentation></annotation><choice><element name="ctx"
type="log4j:org.apache.logging.log4j.core.lookup.ContextMapLookup"/><element
name="date"
type="log4j:org.apache.logging.log4j.core.lookup.DateLookup"/><element
name="env"
type="log4j:org.apache.logging.log4j.core.lookup.EnvironmentLookup"/><element
name="event" type="log4j:org.apache.logging [...]
+For example, it would be possible to implement a lookup that used the key as a
primary key, and looked up the value on demand from the
database</documentation></annotation><choice><element name="ctx"
type="log4j:org.apache.logging.log4j.core.lookup.ContextMapLookup"/><element
name="date"
type="log4j:org.apache.logging.log4j.core.lookup.DateLookup"/><element
name="env"
type="log4j:org.apache.logging.log4j.core.lookup.EnvironmentLookup"/><element
name="event" type="log4j:org.apache.logging [...]
-The passed in "key" should be the value of another
lookup.</documentation></annotation></complexType><group
name="org.apache.logging.log4j.core.net.Advertiser"><choice><element
name="default"
type="log4j:org.apache.logging.log4j.core.config.DefaultAdvertiser"/><element
name="memory"
type="log4j:org.apache.logging.log4j.core.config.InMemoryAdvertiser"/><element
name="multicastdns"
type="log4j:org.apache.logging.log4j.core.net.MulticastDnsAdvertiser"/></choice></group><simpleType
name="org [...]
+The passed in "key" should be the value of another
lookup.</documentation></annotation></complexType><group
name="org.apache.logging.log4j.core.net.Advertiser"><choice><element
name="Default"
type="log4j:org.apache.logging.log4j.core.config.DefaultAdvertiser"/><element
name="MulticastDns"
type="log4j:org.apache.logging.log4j.core.net.MulticastDnsAdvertiser"/></choice></group><simpleType
name="org.apache.logging.log4j.core.net.Facility"><annotation><documentation>The
facility codes used b [...]
[cols="1,1"]
|===
@@ -509,7 +517,7 @@
html#SSLContext</documentation></annotation></attribute></complexType><group nam
See the Java Secure Socket Extension Reference Guide for information these
names.</documentation></annotation></attribute><attribute name="type"
type="string"><annotation><documentation>The KeyStore type, null defaults to
`"JKS"`.</documentation></annotation></attribute></complexType><group
name="org.apache.logging.log4j.core.pattern.AbstractPatternConverter"><annotation><documentation>AbstractPatternConverter
is an abstract class that provides the formatting functionality that derived c
[...]
Conversion specifiers in a conversion patterns are parsed to individual
PatternConverters.
-Each of which is responsible for converting an object in a converter specific
manner.</documentation></annotation><choice><element
name="TestFormatPatternConverter"
type="log4j:org.apache.logging.log4j.core.TestPatternConverters.TestFormatPatternConverter"/><element
name="TestParametersPatternConverter"
type="log4j:org.apache.logging.log4j.core.TestPatternConverters.TestParametersPatternConverter"/><element
name="black"
type="log4j:org.apache.logging.log4j.core.pattern.AbstractStyleNameC [...]
+Each of which is responsible for converting an object in a converter specific
manner.</documentation></annotation><choice><element
name="Log4j1LevelPatternConverter"
type="log4j:org.apache.log4j.pattern.Log4j1LevelPatternConverter"/><element
name="Log4j1MdcPatternConverter"
type="log4j:org.apache.log4j.pattern.Log4j1MdcPatternConverter"/><element
name="Log4j1NdcPatternConverter"
type="log4j:org.apache.log4j.pattern.Log4j1NdcPatternConverter"/><element
name="black" type="log4j:org.apache. [...]
Adds ANSI color styling to the result of the enclosed
pattern.</documentation></annotation><choice><element name="black"
type="log4j:org.apache.logging.log4j.core.pattern.AbstractStyleNameConverter.Black"/><element
name="blue"
type="log4j:org.apache.logging.log4j.core.pattern.AbstractStyleNameConverter.Blue"/><element
name="cyan"
type="log4j:org.apache.logging.log4j.core.pattern.AbstractStyleNameConverter.Cyan"/><element
name="green" type="log4j:org.apache.logging.log4j.core.pattern.Abst [...]
@@ -573,28 +581,42 @@ To disable ANSI output unconditionally, specify an
additional option `disableAns
[source,java]
----
%highlight{%d{ ISO8601 } [%t] %-5level: %msg%n%throwable}{STYLE=DEFAULT,
noConsoleNoAnsi=true}
-----</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.IntegerPatternConverter"><annotation><documentation>Formats
an integer.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.LevelPatternConverter"><annotation><documentation>Returns
the event's level in a
StringBuilder.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.LineLocationPatternCon [...]
+----</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.IntegerPatternConverter"><annotation><documentation>Formats
an integer.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.LevelPatternConverter"><annotation><documentation>Returns
the event's level in a
StringBuilder.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.LineLocationPatternCon [...]
util.
Hashtable.
toString(), or to output the value of a specific key within the
Map.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.MarkerPatternConverter"><annotation><documentation>Returns
events' full marker string in a
StringBuilder.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.MarkerSimpleNamePatternConverter"><annotation><documentation>Appends
an event's maker name to a StringBuilder.</documen [...]
Limit contained text to a maximum length.
On invalid length the default value 100 is used (and an error message is
logged). If max length is greater than 20, an abbreviated text will get
ellipsis ("...") appended.
-Example usage (for email subject): `"%maxLen{[AppName, ${hostName},
${web:contextPath}] %p: %c{1} - %m%notEmpty{
=>%ex{short}}}{160}"`</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.MdcPatternConverter"><annotation><documentation>Able
to handle the contents of the LogEvent's MDC and either output the entire
contents of the properties in a similar format to the java.
+Example usage (for email subject):
+
+[source,java]
+----
+`%maxLen{[AppName, ${hostName}, ${web:contextPath}] %p: %c{1} - %m%notEmpty{
=>%ex{short}}}{160}`
+----</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.MdcPatternConverter"><annotation><documentation>Able
to handle the contents of the LogEvent's MDC and either output the entire
contents of the properties in a similar format to the java.
util.
Hashtable.
-toString(), or to output the value of a specific key within the property
bundle when this pattern converter has the option
set.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.MessagePatternConverter"><annotation><documentation>Returns
the event's rendered message in a
StringBuilder.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.MethodLocationPatternConverter"><annotation><documentatio
[...]
+toString(), or to output the value of a specific key within the property
bundle when this pattern converter has the option
set.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.MessagePatternConverter"><annotation><documentation>Returns
the event's rendered message in a
StringBuilder.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.MethodLocationPatternConverter"><annotation><documentatio
[...]
The extended stack trace will also include the location of where the class was
loaded from and the version of the jar if
available.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.SequenceNumberPatternConverter"><annotation><documentation>Formats
the event sequence
number.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.StyleConverter"><annotation><documentation>Style
pattern converter.
Adds ANSI color styling to the result of the enclosed pattern.
-To disable ANSI output unconditionally, specify an additional option
`disableAnsi=true`, or to disable ANSI output if no console is detected,
specify option
`noConsoleNoAnsi=true`.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.ThreadIdPatternConverter"><annotation><documentation>Formats
the event thread ID.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.ThreadNamePatternConverter"><an
[...]
+To disable ANSI output unconditionally, specify an additional option
`disableAnsi=true`, or to disable ANSI output if no console is detected,
specify option
`noConsoleNoAnsi=true`.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.ThreadIdPatternConverter"><annotation><documentation>Formats
the event thread ID.</documentation></annotation></complexType><complexType
name="org.apache.logging.log4j.core.pattern.ThreadNamePatternConverter"><an
[...]
+
+Use in a real environment is discouraged as the List could eventually grow to
cause an OutOfMemoryError.
+This appender is not thread-safe.
+This appender will use
apiref:org.apache.logging.log4j.core.Layout#toByteArray(LogEvent)[].</documentation></annotation><sequence><group
ref="log4j:org.apache.logging.log4j.core.Filter" minOccurs="0"></group><group
ref="log4j:org.apache.logging.log4j.core.Layout"
minOccurs="0"></group></sequence><attribute name="entryPerNewLine"
type="boolean"></attribute><attribute name="name"
type="string"></attribute><attribute name="raw"
type="boolean"></attribute></complexType><complexType name="org [...]
Causes a reconfiguration when a file
changes.</documentation></annotation><choice><element name="http"
type="log4j:org.apache.logging.log4j.core.config.HttpWatcher"/></choice></group><group
name="org.apache.logging.log4j.core.util.Builder"><annotation><documentation>A
type of builder that can be used to configure and create a instances using a
Java DSL instead of through a configuration file.
These builders are primarily useful for internal code and unit tests, but they
can technically be used as a verbose alternative to configuration files.
-When creating _plugin_ builders, it is customary to create the builder class
as a public static inner class called `Builder`. For instance, the builder
class for
apiref:org.apache.logging.log4j.core.util.org.apache.logging.log4j.core.layout.PatternLayout[PatternLayout]
would be `PatternLayout.
Builder`.</documentation></annotation><choice><element name="SocketOptions"
type="log4j:org.apache.logging.log4j.core.net.SocketOptions"/><element
name="SocketPerformancePreferences" type="log4j:or [...]
+When creating _plugin_ builders, it is customary to create the builder class
as a public static inner class called `Builder`. For instance, the builder
class for
apiref:org.apache.logging.log4j.core.util.org.apache.logging.log4j.core.layout.PatternLayout[PatternLayout]
would be `PatternLayout.
Builder`.</documentation></annotation><choice><element name="SocketOptions"
type="log4j:org.apache.logging.log4j.core.net.SocketOptions"/><element
name="SocketPerformancePreferences" type="log4j:or [...]
+Defaults to 1.</documentation></annotation></attribute><attribute
name="compress" type="string"><annotation><documentation>If true the event body
will be compressed.</documentation></annotation></attribute><attribute
name="connectTimeoutMillis" type="string"><annotation><documentation>The amount
of time in milliseconds to wait before a connection times out.
+Minimum is 1000.</documentation></annotation></attribute><attribute
name="dataDir" type="string"><annotation><documentation>The directory where the
Flume FileChannel should write its
data.</documentation></annotation></attribute><attribute name="embedded"
type="string"><annotation><documentation>true if the embedded agent manager
should be used.
+otherwise the Avro manager will be used.
+*Note:*_The embedded attribute is deprecated in favor of specifying the type
attribute._</documentation></annotation></attribute><attribute
name="eventPrefix" type="string"><annotation><documentation>The prefix to add
to event key names.</documentation></annotation></attribute><attribute
name="hosts" type="string"></attribute><attribute name="ignoreExceptions"
type="string"><annotation><documentation>If `"true"` (default) exceptions
encountered when appending events are logged; otherwise [...]
+Minimum is 1000.</documentation></annotation></attribute><attribute
name="type" type="string"><annotation><documentation>Avro (default), Embedded,
or Persistent.</documentation></annotation></attribute></complexType><group
name="org.apache.logging.log4j.flume.appender.FlumeEventFactory"><annotation><documentation>Factory
to create Flume events.</documentation></annotation><choice><element
name="Flume"
type="log4j:org.apache.logging.log4j.flume.appender.FlumeAppender"/></choice></group><c
[...]
Logs with apiref:jakarta.servlet.ServletContext#log(String,Throwable)[] if
true and with apiref:jakarta.servlet.ServletContext#log(String)[] if
false.</documentation></annotation></attribute><attribute name="name"
type="string"></attribute></complexType></schema>
\ No newline at end of file