ch.qos.logback.classic.db

## Class DBAppender

- java.lang.Object
- - ch.qos.logback.core.spi.ContextAwareBase
  - - ch.qos.logback.core.UnsynchronizedAppenderBase<E>
    - - ch.qos.logback.core.db.DBAppenderBase<ILoggingEvent>
      - - ch.qos.logback.classic.db.DBAppender

All Implemented Interfaces:
  Appender<ILoggingEvent>, ContextAware, FilterAttachable<ILoggingEvent>, LifeCycle

    public class DBAppender
    extends DBAppenderBase<ILoggingEvent>

The DBAppender inserts logging events into three database tables in a format independent of the Java programming language. For more information about this appender, please refer to the online manual at http://logback.qos.ch/manual/appenders.html#DBAppender

Author:
  Ceki Gülcü, Ray DeCampo, Sébastien Pennec

### Field Summary

Fields
`protected static Method` `GET_GENERATED_KEYS_METHOD`
`protected String` `insertExceptionSQL`
`protected String` `insertPropertiesSQL`
`protected String` `insertSQL`

### Fields inherited from class ch.qos.logback.core.db.DBAppenderBase

`cnxSupportsBatchUpdates, cnxSupportsGetGeneratedKeys, connectionSource, sqlDialect`

### Fields inherited from class ch.qos.logback.core.UnsynchronizedAppenderBase

`name, started`

### Fields inherited from class ch.qos.logback.core.spi.ContextAwareBase

`context`

### Constructor Summary

Constructors
Constructor and Description
`DBAppender()`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected Method` `getGeneratedKeysMethod()`
`protected String` `getInsertSQL()`
`protected void` `insertProperties(Map<String,String> mergedMap, Connection connection, long eventId)`
`protected void` `insertThrowable(IThrowableProxy tp, Connection connection, long eventId)`
`protected void` `secondarySubAppend(ILoggingEvent event, Connection connection, long eventId)`
`void` `setDbNameResolver(DBNameResolver dbNameResolver)`
`void` `start()`
`protected void` `subAppend(ILoggingEvent event, Connection connection, PreparedStatement insertStatement)`

### Methods inherited from class ch.qos.logback.core.db.DBAppenderBase

`append, getConnectionSource, selectEventId, setConnectionSource, stop`

### Methods inherited from class ch.qos.logback.core.UnsynchronizedAppenderBase

`addFilter, clearAllFilters, doAppend, getCopyOfAttachedFiltersList, getFilterChainDecision, getName, isStarted, setName, toString`

### Methods inherited from class ch.qos.logback.core.spi.ContextAwareBase

`addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, getDeclaredOrigin, getStatusManager, setContext`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface ch.qos.logback.core.spi.ContextAware

`addError, addError, addInfo, addInfo, addStatus, addWarn, addWarn, getContext, setContext`

### Field Detail

#### insertPropertiesSQL

    protected String insertPropertiesSQL

#### insertExceptionSQL

    protected String insertExceptionSQL

#### insertSQL

    protected String insertSQL

#### GET_GENERATED_KEYS_METHOD

    protected static final Method GET_GENERATED_KEYS_METHOD

### Constructor Detail

#### DBAppender

    public DBAppender()

### Method Detail

#### setDbNameResolver

    public void setDbNameResolver(DBNameResolver dbNameResolver)

#### start

    public void start()

Specified by:
  `start` in interface `LifeCycle`
Overrides:
  `start` in class `DBAppenderBase<ILoggingEvent>`

#### subAppend

    protected void subAppend(ILoggingEvent event,
                             Connection connection,
                             PreparedStatement insertStatement)
                      throws Throwable

Specified by:
  `subAppend` in class `DBAppenderBase<ILoggingEvent>`
Throws:
  `Throwable`

#### secondarySubAppend

    protected void secondarySubAppend(ILoggingEvent event,
                                      Connection connection,
                                      long eventId)
                               throws Throwable

Specified by:
  `secondarySubAppend` in class `DBAppenderBase<ILoggingEvent>`
Throws:
  `Throwable`

#### getGeneratedKeysMethod

    protected Method getGeneratedKeysMethod()

Specified by:
  `getGeneratedKeysMethod` in class `DBAppenderBase<ILoggingEvent>`

#### getInsertSQL

    protected String getInsertSQL()

Specified by:
  `getInsertSQL` in class `DBAppenderBase<ILoggingEvent>`

#### insertProperties

    protected void insertProperties(Map<String,String> mergedMap,
                                    Connection connection,
                                    long eventId)
                             throws SQLException

Throws:
  `SQLException`

#### insertThrowable

    protected void insertThrowable(IThrowableProxy tp,
                                   Connection connection,
                                   long eventId)
                            throws SQLException

Throws:
  `SQLException`