Class JdbcDatabaseManager
- java.lang.Object
-
- org.apache.logging.log4j.core.appender.AbstractManager
-
- org.apache.logging.log4j.core.appender.db.AbstractDatabaseManager
-
- org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager
-
- All Implemented Interfaces:
Flushable,AutoCloseable
public final class JdbcDatabaseManager extends org.apache.logging.log4j.core.appender.db.AbstractDatabaseManagerAnAbstractDatabaseManagerimplementation for relational databases accessed via JDBC.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected voidcloseResources(boolean logExceptions)protected booleancommitAndClose()protected voidconnectAndStart()org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSourcegetConnectionSource()static JdbcDatabaseManagergetJDBCDatabaseManager(String name, int bufferSize, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource connectionSource, String tableName, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[] columnConfigs)static JdbcDatabaseManagergetManager(String name, int bufferSize, org.apache.logging.log4j.core.Layout<? extends Serializable> layout, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource connectionSource, String tableName, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[] columnConfigs, org.apache.logging.log4j.core.appender.db.ColumnMapping[] columnMappings)Deprecated.static JdbcDatabaseManagergetManager(String name, int bufferSize, org.apache.logging.log4j.core.Layout<? extends Serializable> layout, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource connectionSource, String tableName, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[] columnConfigs, org.apache.logging.log4j.core.appender.db.ColumnMapping[] columnMappings, boolean immediateFail, long reconnectIntervalMillis)static JdbcDatabaseManagergetManager(String name, int bufferSize, org.apache.logging.log4j.core.Layout<? extends Serializable> layout, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource connectionSource, String tableName, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[] columnConfigs, org.apache.logging.log4j.core.appender.db.ColumnMapping[] columnMappings, boolean immediateFail, long reconnectIntervalMillis, boolean truncateStrings)Creates a JDBC manager for use within theJdbcAppender, or returns a suitable one if it already exists.StringgetSqlStatement()StringgetTableName()protected booleanshutdownInternal()protected voidstartupInternal()protected voidwriteInternal(org.apache.logging.log4j.core.LogEvent event, Serializable serializable)protected voidwriteThrough(org.apache.logging.log4j.core.LogEvent event, Serializable serializable)-
Methods inherited from class org.apache.logging.log4j.core.appender.db.AbstractDatabaseManager
buffer, flush, getManager, isBuffered, isRunning, releaseSub, shutdown, startup, toString, write, write, writeInternal
-
-
-
-
Method Detail
-
getJDBCDatabaseManager
@Deprecated public static JdbcDatabaseManager getJDBCDatabaseManager(String name, int bufferSize, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource connectionSource, String tableName, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[] columnConfigs)
Deprecated.Creates a JDBC manager for use within theJdbcAppender, or returns a suitable one if it already exists.- Parameters:
name- The name of the manager, which should include connection details and hashed passwords where possible.bufferSize- The size of the log event buffer.connectionSource- The source for connections to the database.tableName- The name of the database table to insert log events into.columnConfigs- Configuration information about the log table columns.- Returns:
- a new or existing JDBC manager as applicable.
-
getManager
@Deprecated public static JdbcDatabaseManager getManager(String name, int bufferSize, org.apache.logging.log4j.core.Layout<? extends Serializable> layout, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource connectionSource, String tableName, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[] columnConfigs, org.apache.logging.log4j.core.appender.db.ColumnMapping[] columnMappings)
Deprecated.Creates a JDBC manager for use within theJdbcAppender, or returns a suitable one if it already exists.- Parameters:
name- The name of the manager, which should include connection details and hashed passwords where possible.bufferSize- The size of the log event buffer.layout- The Appender-level layoutconnectionSource- The source for connections to the database.tableName- The name of the database table to insert log events into.columnConfigs- Configuration information about the log table columns.columnMappings- column mapping configuration (including type conversion).- Returns:
- a new or existing JDBC manager as applicable.
-
getManager
@Deprecated public static JdbcDatabaseManager getManager(String name, int bufferSize, org.apache.logging.log4j.core.Layout<? extends Serializable> layout, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource connectionSource, String tableName, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[] columnConfigs, org.apache.logging.log4j.core.appender.db.ColumnMapping[] columnMappings, boolean immediateFail, long reconnectIntervalMillis)
Deprecated.Creates a JDBC manager for use within theJdbcAppender, or returns a suitable one if it already exists.- Parameters:
name- The name of the manager, which should include connection details and hashed passwords where possible.bufferSize- The size of the log event buffer.layout- the Appender-level layoutconnectionSource- The source for connections to the database.tableName- The name of the database table to insert log events into.columnConfigs- Configuration information about the log table columns.columnMappings- column mapping configuration (including type conversion).reconnectIntervalMillis- How often to reconnect to the database when a SQL exception is detected.immediateFail- Whether to fail immediately with aAppenderLoggingExceptionwhen connecting to JDBC fails.- Returns:
- a new or existing JDBC manager as applicable.
-
getManager
public static JdbcDatabaseManager getManager(String name, int bufferSize, org.apache.logging.log4j.core.Layout<? extends Serializable> layout, org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource connectionSource, String tableName, org.apache.logging.log4j.core.appender.db.jdbc.ColumnConfig[] columnConfigs, org.apache.logging.log4j.core.appender.db.ColumnMapping[] columnMappings, boolean immediateFail, long reconnectIntervalMillis, boolean truncateStrings)
Creates a JDBC manager for use within theJdbcAppender, or returns a suitable one if it already exists.- Parameters:
name- The name of the manager, which should include connection details and hashed passwords where possible.bufferSize- The size of the log event buffer.layout- The Appender-level layoutconnectionSource- The source for connections to the database.tableName- The name of the database table to insert log events into.columnConfigs- Configuration information about the log table columns.columnMappings- column mapping configuration (including type conversion).immediateFail- Whether or not to fail immediately with aAppenderLoggingExceptionwhen connecting to JDBC fails.reconnectIntervalMillis- How often to reconnect to the database when a SQL exception is detected.truncateStrings- Whether or not to truncate strings to match column metadata.- Returns:
- a new or existing JDBC manager as applicable.
-
closeResources
protected void closeResources(boolean logExceptions)
-
commitAndClose
protected boolean commitAndClose()
- Specified by:
commitAndClosein classorg.apache.logging.log4j.core.appender.db.AbstractDatabaseManager
-
connectAndStart
protected void connectAndStart()
- Specified by:
connectAndStartin classorg.apache.logging.log4j.core.appender.db.AbstractDatabaseManager
-
getConnectionSource
public org.apache.logging.log4j.core.appender.db.jdbc.ConnectionSource getConnectionSource()
-
getSqlStatement
public String getSqlStatement()
-
getTableName
public String getTableName()
-
shutdownInternal
protected boolean shutdownInternal()
- Specified by:
shutdownInternalin classorg.apache.logging.log4j.core.appender.db.AbstractDatabaseManager
-
startupInternal
protected void startupInternal() throws Exception- Specified by:
startupInternalin classorg.apache.logging.log4j.core.appender.db.AbstractDatabaseManager- Throws:
Exception
-
writeInternal
protected void writeInternal(org.apache.logging.log4j.core.LogEvent event, Serializable serializable)- Specified by:
writeInternalin classorg.apache.logging.log4j.core.appender.db.AbstractDatabaseManager
-
writeThrough
protected void writeThrough(org.apache.logging.log4j.core.LogEvent event, Serializable serializable)- Overrides:
writeThroughin classorg.apache.logging.log4j.core.appender.db.AbstractDatabaseManager
-
-