更新:我添加了一个logback-spring.xml,它在嵌入式tomcat上运行良好,但在外部tomcat上就不行了(它不创建文件)
下面是我的项目中使用的logback-spring.xml
,它可以很好地与外部Tomcat配合使用。
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
<include resource="org/springframework/boot/logging/logback/file-appender.xml" />
<root level="INFO">
<appender-ref ref="FILE"/>
</root>
</configuration>
在application.yml
文件中:
logging.file: "/var/logs/tomcat/application.log"
=====编辑:
<configuration>
<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
<springProfile name="local">
<include resource="org/springframework/boot/logging/logback/console-appender.xml" />
<include resource="org/springframework/boot/logging/logback/file-appender.xml" />
<root level="INFO">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</root>
</springProfile>
<springProfile name="prod">
<include resource="org/springframework/boot/logging/logback/file-appender.xml" />
<root level="INFO">
<appender-ref ref="FILE"/>
</root>
</springProfile>
</configuration>
每当我部署一个外部化配置有错误的生产应用程序时,我都会在Tomcat日志中收到以下消息: 显然,外部化的配置是在log4j被正确初始化之前处理的,因此没有附加程序可以接受来自的消息。 有没有办法预先初始化log4j,以便在标准Grails log4j初始化发生之前捕获这些消息?
每当Spring Boot应用程序即将启动时,我都会尝试做一些日志记录。 目前,我有一个类,实现,我将它注册为监听器在主函数的。 应用爪哇: 初始化Logger.java 问题是,每当我通过Intellij的SpringBoot运行程序或命令行作为胖罐子运行应用程序时,它都运行良好,但是当我将其部署到外部Tomcat时,这些日志不会显示出来(所有其他应用程序日志都运行良好)。 我该怎么做?
我有Spring Boot应用程序在Gradle与Liquibase变更集。 此代码是多模块应用程序,在六边形体系结构中具有大约四个模块。 并且对于医生数据部署模块,资源文件夹结构如下所示: 我的问题是我想把配置和日志文件放在代码之外,我怎么能从代码中外部化这些文件。 我想以2种方式运行代码,如下所示: > 我想将我的代码作为 Jar 文件运行,并希望在运行 jar 时传递这些配置和日志回传文件,
所以我试图从我们的tomcat日志中过滤出一条警告级别的消息。警告是: 我尝试更新tomcat中的logging.properties以添加: com.sun.xml.ws.policy.elector.level=OFF 尽管如此,警告仍在继续。到目前为止,我唯一能做的事情就是关闭java。util。登录中。安慰者。水平=关闭,这显然不理想。 我们正在进行一次普通的伐木。Tomcat 8.5中的
它应该根据SLF4JBridgeHandler记录所有内容。 是我遗漏了什么,还是一个日志(由启动程序使用)的问题,而不是我的误解?
我想在我的应用程序中使用SLF4J+logback用于两个目的--日志和审计。 14:41:57.978[main]信息AUDIT_LOGGER-110欢迎使用main 如何确保审核消息在审核记录器下只出现一次?