在发行说明中openSUSE 13.1
,开发人员自豪地声明Tomcat
日志不再是被写入catalina.out
,而是被写入syslog
。我在新发行版中看到了类似的行为,但现在这也是我的问题。我真的不知道为什么它被认为是改进。这就是为什么,
- 我的 Tomcat 安装被用作多个开发人员的游乐场,我几乎不想与他们分享我的系统日志。
- 下面的 web 应用程序
Tomcat
的日志非常详细(因为它正在开发中),我不想将所有这些垃圾放入系统日志中。
关于如何将Tomcat日志重定向到syslog的教程有很多,但我需要执行反向操作。有任何想法吗?
更新:这是我的tomcat.conf
,没有什么可疑的:
JAVA_HOME="/etc/alternatives/jre"
CATALINA_HOME="/usr/share/tomcat" CATALINA_BASE="/usr/share/tomcat" CATALINA_TMPDIR="/var/cache/tomcat/temp"
SECURITY_MANAGER="假"
SHUTDOWN_WAIT =“30”
SHUTDOWN_VERBOSE="假"
CLEAR_WORK="假"
CATALINA_OPTS="-Xms2G -Xmx8G -XX:PermSize=256m -XX:MaxPermSize=4G"
答案1
Tomcat
从 openSUSE 存储库安装,作为systemd
.根据这一页,不可能将 systemd 控制的服务的输出直接重定向到该文件。因此,我只剩下唯一的选择:在消息syslog
到达那里时过滤消息。
我已经创建了文件/etc/rsyslog.d/tomcat.conf
并将这些行放在那里:
:程序名,包含,"tomcat" /var/log/tomcat/tomcat.log
:程序名,包含,“tomcat”~
这对我来说效果很好。
2018 年更新:如今,每个开发人员都宁愿将自己的 Tomcat 实例解压到一个文件夹中,而不是在系统范围内安装。或者甚至可以嵌入到程序中,例如可以在 Spring Boot 中完成。