我在 tomcat 中部署了一个基于 spring-boot 的应用程序。它使用 logback-classic 进行日志记录。logback.xml 保存在外部 $TOMCAT_HOME/conf 文件夹中,并且 logback.xml 使用来自配置属性文件的 logging.config 引用,该文件也位于同一位置。
最近我们添加了以下过滤器来过滤掉一些日志
<filter class="ch.qos.logback.core.filter.EvaluatorFilter">
<evaluator>
<expression>return message.contains("SOMESTRING")</expression>
</evaluator>
<OnMismatch>NEUTRAL</OnMismatch>
<onMatch>DENY</onMatch>
</filter>
上面的过滤器需要下面的库
<dependency>
<groupId>org.codehaus.janino</groupId>
<artifactId>janino</artifactId>
<version>3.1.0</version>
</dependency>
当我们构建和部署应用程序 janino 库时,下载到应用程序 lib 文件夹中,我们检查它是否存在。但是当我们启动应用程序时,虽然tomcat启动成功,但应用程序并没有部署。如果我们尝试使用浏览器访问应用程序,也不会显示任何日志,它会显示 504 bad gateway。我们需要一个解决方案,请帮助我们。
我们在 tomcat lib 文件夹中复制了 Janino 库,它可以工作。但我们不想那样做。logback-classic 和 logback-core jar 也存在于应用程序 lib 文件夹中,在 tomcat webapps 中。
除了应用程序之外,我们应该从日志中的启动消息开始。但是我们没有看到,应用程序在调用时也没有响应。