当前位置: 首页 > 知识库问答 >
问题:

如何在Java Spring Boot中更改log4j2.xml的默认位置?

东方文林
2023-03-14

Log4j2通过根类路径中的Log4j2.xml配置文件与Spring Boot配合得很好,与文档所述完全一致。

java -jar -Dlogging.config="classpath:/config/log4j2.xml" target/app.jar

或使用包含相关属性的外部应用程序.properties

logging.config=classpath:/config/log4j2.xml

但我经常会收到以下错误消息。

ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.

共有1个答案

东方俊材
2023-03-14

正如Spring参考文档中所指定的,logging.config属性不能在应用程序属性之间设置,因为它们是在日志初始化后读取的。

解决方案是以以下方式提供外部日志记录配置的路径:

java -Dlogging.config='/path/to/log4j2.xml' -jar app-current.jar
 类似资料:
  • 问题内容: 我正在尝试使用pip安装Pandas,但遇到了一些麻烦。我刚运行成功下载了熊猫。但是,它没有下载到我想要的位置。这是我使用时看到的内容: 这样就安装好了。但是当我创建一个新的Python项目并在下面搜索熊猫时,我感到很困惑,因为它没有出现。但是,我过去下载的其他一些软件包的确出现了,所以我尝试看看它们在哪里。运行(我可以毫无问题地导入)产生: 这是在完全不同的目录中。为了确认我的错误,

  • 我正在尝试使用pip安装Pandas,但遇到了一些问题。我刚刚运行了,成功下载了pandas。但是,它没有下载到我想要的位置。以下是我使用时看到的内容: 所以它被安装了。但是当我创建一个新的Python项目并在System Libs/lib/python下搜索熊猫时,我感到困惑,因为它没有显示出来。然而,我过去下载的其他一些包确实出现了,所以我试着看看它们在哪里。运行(我可以毫无问题地导入)生成:

  • 问题内容: 当我运行docker时,下载的docker映像(似乎是)存储在某个地方。 由于该目录上的磁盘空间有限,因此我要同时将docker设置到多台机器上;有没有办法将此默认位置更改为ie ? 问题答案: 您可以使用option和您选择的目录来启动Docker守护程序。这将为Docker设置适当的运行时。 对于1.8版,应该是这样的: 对于早期版本,它将是: 从手册页:

  • 例如:如果jar文件位于“D:\apps\jar.jar”中,则日志路径为“D:\log”;如果jar文件位于“C:\apps\jar.jar”中,则日志路径为“C:\log” 我尝试将log4j2.xml中的行(如下)更改为: 并在初始化记录器之前调用此函数:

  • 问题内容: 通过卷API创建卷时,也就是说,由于容器卷模式现在不再是最佳做法,因此: 例如,我想在/ data中存在docker卷(安装在不同的物理卷中)。 这与符号链接是不可能的,绑定绑定是可能的,但是我想知道Docker中是否有一些配置可以更改每个单独卷的默认位置。 问题答案: 您可以更改泊坞存储其文件,包括通过改变它的一个卷启动参数叫。 如果您使用systemd进行服务管理,则该文件通常位于

  • 当通过卷API创建卷时,也就是说,容器卷模式现在不一定是最佳实践: 例如,我希望docker卷存在于/data中(装载在不同的物理卷中)。 这对于符号链接是不可能的,对于绑定挂载也是可能的,但是我想知道Docker中是否有一些配置来更改每个单独卷的默认位置。