开发者社区> 问答> 正文

springmvc+jboss的log4j配置流程:报错

@yonge 你好,想跟你请教个问题:看了你的springmvc+mybaties+log4j文章,但是还是没配置成功,控制台也没sql日志输出;能不能告诉我全部所需的文件,以及放在哪个位置啊,谢了!

展开
收起
kun坤 2020-06-12 21:36:03 544 0
1 条回答
写回答
取消 提交回答
  • 举例说明如果是 Log4j 1.x 的的话,和 Log4j 2.x 就不是一个东西。
    将日志同时输出到文件和数据库,配置两个 Appender 即可:

    • FileAppender 将日志输出到文件
    • JDBCAppender 将日志输出到数据库。
    如果想要自定义输出策略,只能自己写来实现。
    org.apache.log4j.Appender
    Implement this interface for your own strategies for outputting log statements.

    log4j.xml 配置如下:
    • 将日志输出到文件
    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration> <appender name="FILE" class="org.apache.log4j.FileAppender"> <param name="file" value="${log}/log.out"/> <param name="immediateFlush" value="true"/> <param name="threshold" value="debug"/> <param name="append" value="false"/> <layout class="org.apache.log4j.PatternLayout"> <param name="conversionPattern" value="%m%n"/> </layout> </appender> <logger name="log4j.rootLogger" additivity="false"> <level value="DEBUG"/> <appender-ref ref="FILE"/> </logger> </log4j:configuration>
    • 将日志输出到数据库
    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration> <appender name="DB" class="org.apache.log4j.jdbc.JDBCAppender"> <param name="url" value="jdbc:mysql://localhost/DBNAME"/> <param name="driver" value="com.mysql.jdbc.Driver"/> <param name="user" value="user_id"/> <param name="password" value="password"/> <param name="sql" value="INSERT INTO LOGS VALUES('%x','%d','%C','%p','%m')"/> <layout class="org.apache.log4j.PatternLayout"> </layout> </appender> <logger name="log4j.rootLogger" additivity="false"> <level value="DEBUG"/> <appender-ref ref="DB"/> </logger> </log4j:configuration>

    当然,你需要提前建表:
    CREATE TABLE LOGS (USER_ID VARCHAR(20) NOT NULL, DATED DATE NOT NULL, LOGGER VARCHAR(50) NOT NULL, LEVEL VARCHAR(10) NOT NULL, MESSAGE VARCHAR(1000) NOT NULL );
    具体参考: http://edu.51cto.com/course/course_id-4198.html
    ######我想把sql日志输出到eclipse控制台,方便调试,但是一直都没配置成功,再帮忙解答下,谢谢
    2020-06-12 21:36:12
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载