ubuntu

Ubuntu Tomcat日志级别设置建议

小樊
48
2025-10-01 04:52:36
栏目: 智能运维

Ubuntu下Tomcat日志级别设置建议

一、基础日志级别设置(logging.properties文件)

Tomcat的日志级别通过conf/logging.properties文件配置,需根据环境调整全局及特定组件的日志级别:

二、访问日志配置(server.xml文件)

通过conf/server.xml中的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"  # 包含IP请求状态码Referer等信息
       rotatable="true" 
       maxDays="30" />  # 日志保留30天,自动删除旧日志

三、日志轮转管理(Logrotate工具)

使用logrotate自动轮转Tomcat日志(如catalina.out、访问日志),避免单个文件过大:

四、异步日志提升性能(Tomcat 8+)

从Tomcat 8开始,可使用异步日志(AsyncFileHandler)减少日志写入对主线程的影响,提升性能:
修改logging.properties,将默认的ConsoleHandler替换为AsyncFileHandler

handlers = 1catalina.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.formatter = java.util.logging.SimpleFormatter

异步日志适合高并发场景,能显著降低日志IO对应用性能的影响。

五、关键优化技巧

0
看了该问题的人还看了