java中log4j.properties配置文件浅析
创始人
2024-12-03 09:34:21
0

Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可按key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。
1、配置文件
Log4J配置文件的基本格式如下:

#配置根Logger log4j.rootLogger  =   DEBUG,stdout,file... #配置日志信息输出目的地Appender log4j.appender.appenderName = fully.qualified.name.of.appender.class    #配置日志信息的格式(布局)及格式布局选项  appender.appenderName.layout = fully.log4j.qualified.name.of.layout.class log4j.appender.appenderName.layout.option1 = value1  …    log4j.appender.appenderName.layout.optionN = valueN 

2、滚动覆盖配置
RollingFileAppender

-Threshold=DEBUG:指定日志消息的输出最低层次。 -ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。 -File=mylog.txt:指定消息输出到mylog.txt文件。 -Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。 -MaxFileSize=100KB: 后缀可以是KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到mylog.log.1文件。 -MaxBackupIndex=2:指定可以产生的滚动文件的最大数。 

DailyRollingFileAppender

Threshold=WARN:指定日志信息的最低输出级别,默认为DEBUG。 ImmediateFlush=true:表示所有消息都会被立即输出,设为false则不输出,默认值是true。 Append=false:true表示消息增加到指定文件中,false则将消息覆盖指定的文件内容,默认值是true。 File=D:/logs/logging.log4j:指定当前消息输出到logging.log4j文件中。 DatePattern='.'yyyy-MM:每月滚动一次日志文件,即每月产生一个新的日志文件。当前月的日志文件名为logging.log4j,前一个月的日志文件名为logging.log4j.yyyy-MM。 另外,也可以指定按周、天、时、分等来滚动日志文件,对应的格式如下: '.'yyyy-MM:每月 '.'yyyy-ww:每周 '.'yyyy-MM-dd:每天 '.'yyyy-MM-dd-a:每天两次 '.'yyyy-MM-dd-HH:每小时 '.'yyyy-MM-dd-HH-mm:每分钟 

3、示例

log4j.rootLogger=DEBUG,console,dailyFile,im log4j.additivity.org.apache=true # 控制台(console) log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.Threshold=DEBUG log4j.appender.console.ImmediateFlush=true log4j.appender.console.Target=System.err log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n # 日志文件(logFile) log4j.appender.logFile=org.apache.log4j.FileAppender log4j.appender.logFile.Threshold=DEBUG log4j.appender.logFile.ImmediateFlush=true log4j.appender.logFile.Append=true log4j.appender.logFile.File=D:/logs/log.log4j log4j.appender.logFile.layout=org.apache.log4j.PatternLayout log4j.appender.logFile.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n # 回滚文件(rollingFile) log4j.appender.rollingFile=org.apache.log4j.RollingFileAppender log4j.appender.rollingFile.Threshold=DEBUG log4j.appender.rollingFile.ImmediateFlush=true log4j.appender.rollingFile.Append=true log4j.appender.rollingFile.File=D:/logs/log.log4j log4j.appender.rollingFile.MaxFileSize=200KB log4j.appender.rollingFile.MaxBackupIndex=50 log4j.appender.rollingFile.layout=org.apache.log4j.PatternLayout log4j.appender.rollingFile.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n # 定期回滚日志文件(dailyFile) log4j.appender.dailyFile=org.apache.log4j.DailyRollingFileAppender log4j.appender.dailyFile.Threshold=DEBUG log4j.appender.dailyFile.ImmediateFlush=true log4j.appender.dailyFile.Append=true log4j.appender.dailyFile.File=D:/logs/log.log4j log4j.appender.dailyFile.DatePattern='.'yyyy-MM-dd log4j.appender.dailyFile.layout=org.apache.log4j.PatternLayout log4j.appender.dailyFile.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n # 应用于socket log4j.appender.socket=org.apache.log4j.RollingFileAppender log4j.appender.socket.RemoteHost=localhost log4j.appender.socket.Port=5001 log4j.appender.socket.LocationInfo=true # Set up for Log Factor 5 log4j.appender.socket.layout=org.apache.log4j.PatternLayout log4j.appender.socket.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n # Log Factor 5 Appender log4j.appender.LF5_APPENDER=org.apache.log4j.lf5.LF5Appender log4j.appender.LF5_APPENDER.MaxNumberOfRecords=2000 # 发送日志到指定邮件 log4j.appender.mail=org.apache.log4j.net.SMTPAppender log4j.appender.mail.Threshold=FATAL log4j.appender.mail.BufferSize=10 log4j.appender.mail.From = xxx@mail.com log4j.appender.mail.SMTPHost=mail.com log4j.appender.mail.Subject=Log4J Message log4j.appender.mail.To= xxx@mail.com log4j.appender.mail.layout=org.apache.log4j.PatternLayout log4j.appender.mail.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n # 应用于数据库 log4j.appender.database=org.apache.log4j.jdbc.JDBCAppender log4j.appender.database.URL=jdbc:mysql://localhost:3306/test log4j.appender.database.driver=com.mysql.jdbc.Driver log4j.appender.database.user=root log4j.appender.database.password= log4j.appender.database.sql=INSERT INTO LOG4J (Message) VALUES('=[%-5p] %d(%r) --> [%t] %l: %m %x %n') log4j.appender.database.layout=org.apache.log4j.PatternLayout log4j.appender.database.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n   # 自定义Appender log4j.appender.im = net.cybercorlin.util.logger.appender.IMAppender log4j.appender.im.host = mail.cybercorlin.net log4j.appender.im.username = username log4j.appender.im.password = password log4j.appender.im.recipient = corlin@cybercorlin.net log4j.appender.im.layout=org.apache.log4j.PatternLayout log4j.appender.im.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n 

每天生成一个日志文件,保存30天日志

# 设置根记录器 log4j.rootLogger=DEBUG, file   # 配置每天滚动的日志文件 log4j.appender.file=org.apache.log4j.DailyRollingFileAppender log4j.appender.file.File=${log.dir}/myapp.log log4j.appender.file.DatePattern='.'yyyy-MM-dd log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n   # 保留30天的日志文件 log4j.appender.file.MaxBackupIndex=30 

在log4j.properties文件中,可以通过配置RollingFileAppender来设置日志保存的时间周期。在上面配置中,DatePattern设置为.yyyy-MM-dd,表示每天创建一个新的日志文件。MaxBackupIndex设置为30,意味着最多保留30个这样的日志文件。如果需要按小时滚动或其他时间单位,可以相应地调整DatePattern。

相关内容

热门资讯

红龙poker透视!wejok... 红龙poker透视!wejoker辅助软件视频(透视)总是有挂(分享教程);1、在wejoker辅助...
透视代打!wpk辅助购买,wp... 透视代打!wpk辅助购买,wpk有没有脚本,如何分辨真伪(有挂规律);wpk有没有脚本辅助插件是一个...
aapoker辅助工具!德州微... aapoker辅助工具!德州微扑克辅助(透视)一贯存在有挂(详细辅助一起来讨论);致您一封信;亲爱德...
透视规律!德普之星透视辅助io... 透视规律!德普之星透视辅助ios,德朴之星脚本,细节揭秘(有挂黑科技)1、德普之星透视辅助ios系统...
wepoker辅助透视软件!w... wepoker辅助透视软件!wepoker怎么挂飞机(透视)一直是有挂(玩家教你);1、不需要AI权...
透视新版!wepoker透视脚... 透视新版!wepoker透视脚本下载,wepoker辅助器是真的的吗,玩家必看科普(有挂规律)是一款...
德扑ai智能机器人!aapok... 德扑ai智能机器人!aapoker俱乐部(透视)真是有挂(详细辅助分享实测)1、许多玩家不知道德扑a...
透视新版!aapoker辅助包... 透视新版!aapoker辅助包,智星德州菠萝插件官网,必赢教程(有挂详情)智星德州菠萝插件官网是一种...
红龙poker作弊指令!德州局... 红龙poker作弊指令!德州局hhpoker(透视)确实真的有挂(新2025版)1、完成红龙poke...
透视线上!wepoker透视脚... 透视线上!wepoker透视脚本免费下载,德普之星透视辅助软件下载,热门推荐(有挂总结)1.德普之星...