src/main/resources
下创建logback.xml
或log4j2.xml
,设置日志级别(如生产环境用INFO
,开发用DEBUG
)、输出格式(包含时间戳、线程名、类名等)和输出目标(控制台、文件等)。
<configuration>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>logs/app.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>logs/app-%d{yyyy-MM-dd}.log.gz</fileNamePattern>
<maxHistory>30</maxHistory> <!-- 保留30天日志 -->
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="FILE" />
</root>
</configuration>
java.util.logging
,需通过JAVA_OPTS
指定配置文件路径。tail
、grep
、less
查看日志,如tail -f app.log
实时跟踪。gnome-system-log
或ksystemlog
查看系统日志。/etc/logrotate.d/java
)设置按天/按大小滚动日志,自动压缩旧日志并删除过期文件。
/var/log/java/*.log {
daily
rotate 7
compress
missingok
notifempty
}
TimeBasedRollingPolicy
或SizeBasedTriggeringPolicy
。