您的位置:首页 > 数据库

log4j.xml数据库保存日志

2016-07-25 18:34 330 查看
这篇文章主要是来实现log4j.xml实现打印sql语句和日志存入数据库。以下是最完整的配置,大家要相互学习和分享啊,o((≧▽≦o)!!

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ABSOLUTE} %3p %c{1}.%M():%L - %m%n" />
</layout>
</appender>

<!-- 打印数据库数据 -->
<appender name="db" class="org.apache.log4j.jdbc.JDBCAppender">
<param name="driver" value="com.mysql.jdbc.Driver" />
<param name="URL"
value="jdbc:mysql://10.x.x.x:3306/security_db?useUnicode=true&characterEncoding=utf-8" />
<param name="user" value="root" />
<param name="password" value="xxx" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="insert into bbs_log(log_name, user_name, oper_class, oper_method, create_time, log_level, msg, source, user_type) values ('%X{userid}','%X{username}','%C','%M','%d{yyyy-MM-dd HH:mm:ss}','%p','%m', '%X{source}', '%X{usertype}')" />
</layout>
</appender>

<!--- 异步测试,当日志达到缓存区大小时候执行所包的appender -->
<!-- 	<appender name="ASYNC" class="org.apache.log4j.AsyncAppender"> -->
<!-- 		<param name="BufferSize" value="2" /> -->
<!-- 		<appender-ref ref="db" /> -->
<!-- 	</appender> -->

<logger name="net.dontdrinkandroot.example.angularrestspringsecurity.rest.resources" additivity="false">
<level value="DEBUG" />
<appender-ref ref="db" />
</logger>

<!-- 下面是打印 mybatis语句的配置 -->
<logger name="java.sql.Statement" additivity="true">
<level value="DEBUG" />
</logger>

<logger name="org.springframework" additivity="true">
<level value="OFF" />
</logger>
<logger name="org.apache.ibatis" additivity="true">
<level value="OFF" />
</logger>
<logger name="org.mybatis.spring" additivity="true">
<level value="OFF" />
</logger>

<logger name="java.sql.PreparedStatement" additivity="true">
<level value="DEBUG" />
</logger>

<logger name="java.sql.ResultSet" additivity="true">
<level value="DEBUG" />
</logger>

<root>
<level value="DEBUG" />
<appender-ref ref="CONSOLE" />
</root>
</log4j:configuration>

大家可以再次基础上可以添加自己的输出方式,打印日志和记录日志对于根据业务的进行和bug的跟踪大有帮助,所以还是养成记录日志的习惯。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: