ubuntu

如何配置Ubuntu Tomcat日志

小樊
39
2025-11-29 07:10:51
栏目: 智能运维

Ubuntu 上 Tomcat 日志配置实操指南

一 配置文件与日志位置

二 配置访问日志 AccessLogValve

<Valve className="org.apache.catalina.valves.AccessLogValve"
       directory="logs"
       prefix="localhost_access_log"
       suffix=".txt"
       pattern="%h %l %u %t "%r" %s %b %{Referer}i %{User-Agent}i"
       resolveHosts="false"
       rotatable="true"
       maxDays="30"/>

三 配置运行日志级别与输出

# 全局日志级别
.level = INFO

# 控制台输出(可选)
java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

# 按组件设置更细粒度级别(示例)
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = FINE
org.apache.coyote.level = FINE
org.apache.tomcat.util.scan.StandardJarScanFilter.level = FINE

# 使用异步文件处理器提升性能(Tomcat 8+)
handlers = 1catalina.org.apache.juli.AsyncFileHandler, \
           2localhost.org.apache.juli.AsyncFileHandler, \
           3manager.org.apache.juli.AsyncFileHandler, \
           4host-manager.org.apache.juli.AsyncFileHandler, \
           java.util.logging.ConsoleHandler

1catalina.org.apache.juli.AsyncFileHandler.level = INFO
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
1catalina.org.apache.juli.AsyncFileHandler.suffix = .log
1catalina.org.apache.juli.AsyncFileHandler.rotatable = true
1catalina.org.apache.juli.AsyncFileHandler.maxDays = 30

2localhost.org.apache.juli.AsyncFileHandler.level = FINE
2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost.
2localhost.org.apache.juli.AsyncFileHandler.suffix = .log
2localhost.org.apache.juli.AsyncFileHandler.rotatable = true
2localhost.org.apache.juli.AsyncFileHandler.maxDays = 30

四 日志轮转与清理

/var/log/tomcat/catalina.out {
    daily
    rotate 7
    compress
    missingok
    notifempty
    create 0644 tomcat tomcat
    postrotate
        /usr/bin/kill -USR1 `cat /var/run/tomcat.pid 2>/dev/null` || true
    endscript
}

五 验证与常用命令

0
看了该问题的人还看了