标签:没有 base enc 地址 end 官方 tomcat7 精确 排查
Tomcat 的 catalina.out 日志默认只要不停服务器就一直存,导致文件很大出现问题难以排查,所以要调整 catalina.out 的备份机制,每天备份一次。
tomcat 修改默认 java 的日志管理为 log4j,但好像只支持 tomcat7。tomcat8官方文档
创建 log4j.properties,保存到 $CATALINA_BASE/lib 目录,内容如下:
log4j.rootLogger = INFO, CATALINA
# Define all the appenders
log4j.appender.CATALINA = org.apache.log4j.DailyRollingFileAppender
log4j.appender.CATALINA.File = ${catalina.base}/logs/catalina
log4j.appender.CATALINA.Append = true
log4j.appender.CATALINA.Encoding = UTF-8
# Roll-over the log once per day
log4j.appender.CATALINA.DatePattern = ‘.‘yyyy-MM-dd‘.log‘
log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout
log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
log4j.appender.LOCALHOST = org.apache.log4j.DailyRollingFileAppender
log4j.appender.LOCALHOST.File = ${catalina.base}/logs/localhost
log4j.appender.LOCALHOST.Append = true
log4j.appender.LOCALHOST.Encoding = UTF-8
log4j.appender.LOCALHOST.DatePattern = ‘.‘yyyy-MM-dd‘.log‘
log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout
log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
log4j.appender.MANAGER = org.apache.log4j.DailyRollingFileAppender
log4j.appender.MANAGER.File = ${catalina.base}/logs/manager
log4j.appender.MANAGER.Append = true
log4j.appender.MANAGER.Encoding = UTF-8
log4j.appender.MANAGER.DatePattern = ‘.‘yyyy-MM-dd‘.log‘
log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout
log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
log4j.appender.HOST-MANAGER = org.apache.log4j.DailyRollingFileAppender
log4j.appender.HOST-MANAGER.File = ${catalina.base}/logs/host-manager
log4j.appender.HOST-MANAGER.Append = true
log4j.appender.HOST-MANAGER.Encoding = UTF-8
log4j.appender.HOST-MANAGER.DatePattern = ‘.‘yyyy-MM-dd‘.log‘
log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout
log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Encoding = UTF-8
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
# Configure which loggers log to which appenders
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost] = INFO, LOCALHOST
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager] = INFO, MANAGER
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager] = INFO, HOST-MANAGER
最后几行也可以是
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost]=DEBUG
log4j.logger.org.apache.catalina.core=DEBUG
log4j.logger.org.apache.catalina.session=DEBUG
下载 Log4j,版本要求 1.2.x。替换 bin 中的 tomcat-juli.jar,添加 tomcat-juli-adapters.jar 和 log4j.jar 到 lib 中。(tomcat 两个 jar 下载地址 或 另一个地址 在各个版本的 bin/extras 中,但只发现 tomcat7 有)。
/etc/crontab 文件显示了 linux 的定时任务。
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
27 17 * * * root sh /xxx/xxx/xxx/xxx.sh
0 1 * * * root /bin/httpntp
5 1 * * * root /bin/ftpsdns
用户定义的 cron 在 /var/spool/cron 下,文件名就是用户名,可以查看用户添加的定时任务。
添加定时任务有两种方式:
[root@123456]~# crontab -e
*/1 * * * * /usr/sbin/logrotate -vf /xxx/xxx/xxx/test-log/tomcat-logrotate
#添加每分钟执行日志分割
[root@123456]~# crontab -l
*/1 * * * * /usr/sbin/logrotate -vf /xxx/xxx/xxx/test-log/tomcat-logrotate
tomcat-logrotate 文件如下(文件中可以写脚本,参数和示例见 logrotate):
/xxx/xxx/xxx/tomcat/logs/catalina.out {
ifempty
copytruncate
rotate 365
missingok
daily
dateext
}
修改 Tomcat 启动脚本 catalina.sh 时可能和链接中博客描述的不一样,没有 CATALINA_OUT
,只需要找到(第二行可能不一样,但第一行全文只有两处):
org.apache.catalina.startup.Bootstrap "$@" start >> "$CATALINA_OUT" 2>&1 "&"
改为:
org.apache.catalina.startup.Bootstrap "$@" start 2>&1 | /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null &
如果有 "$CATALINA_BASE"/logs/catalina.out
或 touch "$CATALINA_OUT"
一定要用 # 注释掉。
标签:没有 base enc 地址 end 官方 tomcat7 精确 排查
原文地址:https://www.cnblogs.com/hligy/p/13955299.html