Class JpaDatabaseManager
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.jpa.JpaDatabaseManager
- All Implemented Interfaces:
Flushable,AutoCloseable
An
AbstractDatabaseManager implementation for relational databases accessed via JPA.-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.logging.log4j.core.appender.db.AbstractDatabaseManager
AbstractDatabaseManager.AbstractFactoryData -
Field Summary
Fields inherited from class org.apache.logging.log4j.core.appender.AbstractManager
count, LOGGER -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanprotected voidstatic JpaDatabaseManagergetJPADatabaseManager(String name, int bufferSize, Class<? extends AbstractLogEventWrapperEntity> entityClass, Constructor<? extends AbstractLogEventWrapperEntity> entityConstructor, String persistenceUnitName) Creates a JPA manager for use within theJpaAppender, or returns a suitable one if it already exists.protected booleanprotected voidprotected voidwriteInternal(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, writeThroughMethods inherited from class org.apache.logging.log4j.core.appender.AbstractManager
close, getContentFormat, getCount, getLoggerContext, getManager, getName, getStrSubstitutor, hasManager, log, logDebug, logError, logger, logWarn, narrow, release, stop, updateData
-
Method Details
-
startupInternal
protected void startupInternal()- Specified by:
startupInternalin classAbstractDatabaseManager
-
shutdownInternal
protected boolean shutdownInternal()- Specified by:
shutdownInternalin classAbstractDatabaseManager
-
connectAndStart
protected void connectAndStart()- Specified by:
connectAndStartin classAbstractDatabaseManager
-
writeInternal
- Specified by:
writeInternalin classAbstractDatabaseManager
-
commitAndClose
protected boolean commitAndClose()- Specified by:
commitAndClosein classAbstractDatabaseManager
-
getJPADatabaseManager
public static JpaDatabaseManager getJPADatabaseManager(String name, int bufferSize, Class<? extends AbstractLogEventWrapperEntity> entityClass, Constructor<? extends AbstractLogEventWrapperEntity> entityConstructor, String persistenceUnitName) Creates a JPA manager for use within theJpaAppender, or returns a suitable one if it already exists.- Parameters:
name- The name of the manager, which should include connection details, entity class name, etc.bufferSize- The size of the log event buffer.entityClass- The fully-qualified class name of theAbstractLogEventWrapperEntityconcrete implementation.entityConstructor- The one-argLogEventconstructor for the concrete entity class.persistenceUnitName- The name of the JPA persistence unit that should be used for persisting log events.- Returns:
- a new or existing JPA manager as applicable.
-