要定制Debian上的Tomcat日志以满足业务需求,您可以通过修改Tomcat的配置文件logging.properties
来实现。以下是详细的配置步骤:
找到并编辑logging.properties
文件:
conf
文件夹中,例如 /usr/share/tomcat9/conf/logging.properties
。nano
:sudo nano /usr/share/tomcat9/conf/logging.properties
配置日志级别:
logging.properties
文件中,您可以设置不同日志记录器的日志级别。例如,要将全局日志级别设置为ALL
,您可以添加或修改以下配置: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 = ALL
2localhost.org.apache.juli.AsyncFileHandler.level = ALL
3manager.org.apache.juli.AsyncFileHandler.level = ALL
4host-manager.org.apache.juli.AsyncFileHandler.level = ALL
java.util.logging.ConsoleHandler.level = ALL
配置日志文件保留时间及格式:
logging.properties
文件中配置日志文件的保留时间和格式。例如:1catalina.org.apache.juli.AsyncFileHandler.directory = /var/log/tomcat
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
1catalina.org.apache.juli.AsyncFileHandler.maxDays = 90
1catalina.org.apache.juli.AsyncFileHandler.encoding = UTF-8
启用访问日志:
conf/server.xml
文件来启用。找到以下行并取消注释(删除行首的<!--
):<Valve className="org.apache.catalina.valves.AccessLogValve" directory="/var/log/tomcat" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" resolveHosts="false" />
pattern
参数来定义日志格式。例如:pattern="%h %l %u %t "%r" %s %b %D %{User-Agent}i"
重启Tomcat服务:
sudo systemctl restart tomcat9
验证配置:
tail -f /var/log/tomcat/catalina.out
grep
命令过滤特定关键字,如:grep "error" /var/log/tomcat/catalina.out
通过上述步骤,您可以根据业务需求定制Tomcat的日志级别、输出格式和存储策略。这将帮助您更好地监控应用程序的运行状态,并有效排查和解决问题。