HelloCoder HelloCoder
首页
《Java小白求职之路》
《小白学Java》
计算机毕设
  • 一些免费计算机资源
  • 脚手架工具
  • 《从0到1学习Java多线程》
  • 《从0到1搭建服务器》
随笔
关于作者
首页
《Java小白求职之路》
《小白学Java》
计算机毕设
  • 一些免费计算机资源
  • 脚手架工具
  • 《从0到1学习Java多线程》
  • 《从0到1搭建服务器》
随笔
关于作者
  • 《从0到1学习Java多线程》

  • 《从0到1搭建服务器》

  • RPC

  • Spring源码

  • 《Java日志框架》

    • Java日志框架介绍
    • log4j框架
  • 可观测和监控

  • 玩转IDEA

  • 专栏
  • 《Java日志框架》
#logj #框架
码农阿雨
2025-02-21

log4j框架

https://blog.csdn.net/wankunde/article/details/116717895

log4j 不推荐使用。原因有以下:

  • 有安全漏洞隐患;
  • 功能不如 log4j2 、logback ,log4j 缺失日志删除、压缩等功能;
  • 性能不如 log4j2、logback

Appender:

  • org.apache.log4j.ConsoleAppender(控制台)
  • org.apache.log4j.FileAppender(文件),
  • org.apache.log4j.DailyRollingFileAppender(按照时间产生日志文件),
  • org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),可通过MaxFileSize、MaxBackupIndex 设置滚动策略
  • org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

一般来说,常用的就是org.apache.log4j.DailyRollingFileAppender 和 org.apache.log4j.RollingFileAppender

配置:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//log4j/log4j Configuration//EN" "log4j.dtd">
<log4j:configuration>

    <!--输出到控制台-->
    <appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} [%5p] [%-10t] - %l : %m%n"/>
        </layout>
    </appender>

    <!--DailyRollingFileAppender 按照每天的日期进行切割-->
    <appender name="dailyRollingFileAppender" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="Threshold" value="info"/>
        <param name="File" value="./logs/daily_rollingFile_log4j.log"/>
        
        <param name="DatePattern" value="'.'yyyy-MM-dd-HH-mm'.log'" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} [%5p] [%-10t] - %l : %m%n"/>
        </layout>
    </appender>

    <!--RollingFileAppender 按照文件大小或者最大备份量进行切割-->
    <appender name="rollingFileAppender" class="org.apache.log4j.RollingFileAppender">
        <param name="Threshold" value="info"/>
        <param name="File" value="./logs/rollingFile_log4j.log"/>
        <param name="Append" value="true"/>
        <param name="MaxFileSize" value="10KB"/>
        <param name="MaxBackupIndex" value="5"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} [%5p] [%-10t] - %l : %m%n"/>
        </layout>
    </appender>

    <root>
        <level value="debug"/>
        <appender-ref ref="consoleAppender"/>
        <appender-ref ref="dailyRollingFileAppender"/>
        <appender-ref ref="rollingFileAppender"/>
    </root>
</log4j:configuration>
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>


参考:

  • 自行实现压缩:https://blog.csdn.net/qq_42792934/article/details/115962549 (opens new window)
  • 自定义实现Appender:https://github.com/foreveryang321/log4j-1x-extras (opens new window)
  • log4j扩展插件:https://blog.csdn.net/wankunde/article/details/116717895 (opens new window)
阅读全文
×

(为防止恶意爬虫)
扫码或搜索:HelloCoder
发送:290992
即可永久解锁本站全部文章

解锁
#logj#框架
上次更新: 2025-02-21 06:04:57
最近更新
01
《LeetCode 101》
02-21
02
IDEA、Golang、Pycharm破解安装
02-21
03
《LeetCode CookBook》
02-21
更多文章>
Theme by Vdoing | Copyright © 2020-2025 码农阿雨
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式