参考资料:
Logback官方文档:
http://logback.qos.ch/manual/appenders.html
,DBAppender章节
Logback GutHub:
https://github.com/qos-ch/logback
1、从LogBack源码库
logback-classic/src/main/java/ch/qos/logback/classic/db/script
文件夹
中下载相应数据库的建表脚本,在目标数据库中执行脚本,建立这三个日志表logging_event、logging_event_property、logging_event_exception。
2、工程中添加相关jar依赖
logback:
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- <version>1.1.2</version>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-core</artifactId>
- <version>1.1.2</version>
- </dependency>
Oracle的驱动、数据库连接池:
- <dependency>
- <groupId>com.oracle</groupId>
- <artifactId>ojdbc14</artifactId>
- <version>10.2.0.3.0</version>
- </dependency>
- <dependency>
- <groupId>com.mchange</groupId>
- <artifactId>c3p0</artifactId>
- <version>0.9.5</version>
- </dependency>
3、在logback.xml文件中添加使用外部连接池的DBappender配置
- <!-- 将日志存储到oracle数据库中 -->
<appender name="DB" class="ch.qos.logback.classic.db.DBAppender">
<connectionSource class="ch.qos.logback.core.db.DriverManagerConnectionSource">
<driverClass>oracle.jdbc.driver.OracleDriver</driverClass>
<url>jdbc:oracle:thin:@10.16.16.33:1521:resb</url>
<user>zrhdic</user>
<password>oracle</password>
</connectionSource>
<filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印错误日志 -->
<level>WARN</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender> -
- <root level="INFO">
<appender-ref ref="HOMELINK"/>
<appender-ref ref="CONSOLE"/>
<appender-ref ref="DB"/>
</root>
启动工程,在数据库中查看日志输出情况,大功告成!