`
baobeituping
  • 浏览: 1045928 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

logback 日志记录到数据库中

阅读更多

<!--不采用连接池的配置-->

  <appender name="DB1" class="ch.qos.logback.classic.db.DBAppender">
        <connectionSource class="ch.qos.logback.core.db.DataSourceConnectionSource">

            <dataSource class="com.mysql.jdbc.jdbc2.optional.MysqlDataSource">
                <serverName>${serverName}</serverName>
                <port>${port$</port>
                <databaseName>${dbName}</databaseName>
                <user>${user}</user>
                <password>${pass}</password>
            </dataSource>
        </connectionSource>
    </appender>

 

<!-- 数据库连接池链接方式 -->
    <appender name="DB2" class="ch.qos.logback.classic.db.DBAppender">
        <connectionSource class="ch.qos.logback.core.db.DataSourceConnectionSource">
            <dataSource class="com.mchange.v2.c3p0.ComboPooledDataSource">
                <driverClass>com.mysql.jdbc.Driver</driverClass>
                <jdbcUrl>jdbc:mysql://localhost:3306/quartz</jdbcUrl>
                <user>root</user>
                <password>root</password>
            </dataSource>
        </connectionSource>
    </appender>

 

 

<logger name="com.util.PrintUtil" level="INFO">
        <appender-ref ref="DB1"/>
    </logger>

 

表示对于PrintUtil类的INFO级别的日志采取数据库的记录方式,我采取使用的是c3p0的数据库连接池。

如果不采用连接池的方式:

向MySQL数据库发送500条记录事件耗时5秒,即每个请求10毫秒。

如果采用连接池的方式:

用这个配置,向MySQL数据库发送500条记录事件耗时0..5秒,大约每个请求1毫秒,性能提升了10倍。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics