Class JdbcAppender
- java.lang.Object
-
- org.apache.logging.log4j.core.AbstractLifeCycle
-
- org.apache.logging.log4j.core.filter.AbstractFilterable
-
- org.apache.logging.log4j.core.appender.AbstractAppender
-
- org.apache.logging.log4j.core.appender.db.AbstractDatabaseAppender<JdbcDatabaseManager>
-
- org.apache.logging.log4j.core.appender.db.jdbc.JdbcAppender
-
- All Implemented Interfaces:
Appender
,Filterable
,LocationAware
,LifeCycle
,LifeCycle2
@Plugin(name="JDBC", category="Core", elementType="appender", printObject=true) public final class JdbcAppender extends AbstractDatabaseAppender<JdbcDatabaseManager>
This Appender writes logging events to a relational database using standard JDBC mechanisms. It takes a list ofColumnConfig
s and/orColumnMapping
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 type conversion and persistence usingPreparedStatement.setObject(int, Object)
. AConnectionSource
plugin instance instructs the appender (andJdbcDatabaseManager
) how to connect to the database. This appender can be reconfigured at run time.- See Also:
ColumnConfig
,ColumnMapping
,ConnectionSource
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
JdbcAppender.Builder<B extends JdbcAppender.Builder<B>>
-
Nested classes/interfaces inherited from interface org.apache.logging.log4j.core.LifeCycle
LifeCycle.State
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
description
-
Fields inherited from class org.apache.logging.log4j.core.appender.db.AbstractDatabaseAppender
DEFAULT_RECONNECT_INTERVAL_MILLIS
-
Fields inherited from class org.apache.logging.log4j.core.AbstractLifeCycle
DEFAULT_STOP_TIMEOUT, DEFAULT_STOP_TIMEUNIT, LOGGER
-
Fields inherited from interface org.apache.logging.log4j.core.Appender
ELEMENT_TYPE, EMPTY_ARRAY
-
-
Constructor Summary
Constructors Modifier Constructor Description private
JdbcAppender(java.lang.String name, Filter filter, Layout<? extends java.io.Serializable> layout, boolean ignoreExceptions, Property[] properties, JdbcDatabaseManager manager)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static <B extends JdbcAppender.Builder<B>>
JdbcAppendercreateAppender(java.lang.String name, java.lang.String ignore, Filter filter, ConnectionSource connectionSource, java.lang.String bufferSize, java.lang.String tableName, ColumnConfig[] columnConfigs)
Deprecated.usenewBuilder()
static <B extends JdbcAppender.Builder<B>>
BnewBuilder()
java.lang.String
toString()
-
Methods inherited from class org.apache.logging.log4j.core.appender.db.AbstractDatabaseAppender
append, getLayout, getManager, replaceManager, start, stop
-
Methods inherited from class org.apache.logging.log4j.core.appender.AbstractAppender
error, error, error, getHandler, getName, ignoreExceptions, parseInt, requiresLocation, setHandler, toSerializable
-
Methods inherited from class org.apache.logging.log4j.core.filter.AbstractFilterable
addFilter, getFilter, getPropertyArray, hasFilter, isFiltered, removeFilter, stop
-
Methods inherited from class org.apache.logging.log4j.core.AbstractLifeCycle
equalsImpl, getState, getStatusLogger, hashCodeImpl, initialize, isInitialized, isStarted, isStarting, isStopped, isStopping, setStarted, setStarting, setState, setStopped, setStopping, stop, stop
-
-
-
-
Constructor Detail
-
JdbcAppender
private JdbcAppender(java.lang.String name, Filter filter, Layout<? extends java.io.Serializable> layout, boolean ignoreExceptions, Property[] properties, JdbcDatabaseManager manager)
-
-
Method Detail
-
createAppender
@Deprecated public static <B extends JdbcAppender.Builder<B>> JdbcAppender createAppender(java.lang.String name, java.lang.String ignore, Filter filter, ConnectionSource connectionSource, java.lang.String bufferSize, java.lang.String tableName, ColumnConfig[] columnConfigs)
Deprecated.usenewBuilder()
Factory method for creating a JDBC appender within the plugin manager.- See Also:
JdbcAppender.Builder
-
newBuilder
@PluginBuilderFactory public static <B extends JdbcAppender.Builder<B>> B newBuilder()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classAbstractAppender
-
-