【发布时间】:2015-06-22 09:49:54
【问题描述】:
我想在不重新启动服务器的情况下更改日志级别。我使用weblogic 服务器。为此,我想从外部文件 (LOGBackIncludedFile.xml) 传递日志级别,并在 logback <include file> 中提供此文件路径。
我无法对路径进行硬编码,因为Dev、UAT、Production 中的路径不同。我想将此文件包含在Weblogic 12C 服务器内的某个位置。所以我可以在不接触ear 文件的情况下更改日志级别。
<configuration scan="true" scanPeriod="30 seconds">
<include file="../../LOGBackIncludedFile.xml" />
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender" >
<encoder>
<pattern>%date %-5level [%logger] > %msg%n</pattern>
</encoder>
</appender>
<root level="${root.level:-DEBUG}">
<appender-ref ref="STDOUT" />
</root>
</configuration>
下面是LOGBackIncludedFile.xml
<included>
<property value="INFO" name="root.level"/>
</included>
当我使用这个现有的 xml 时,我得到了这个错误。
java.io.FileNotFoundException: /usrXX/appXX/oracle/product/XXX/domains/XXXDomain/../../LOGBackIncludedFile.xml
我的问题是如何在 logback.xml 中动态设置外部文件路径。路径应该是特定的weblogicinstance。当我将外部文件放入我的实例时。
例如:/usrxx/appxx/oracle/product/XXX/domains/xxxDomain/servers/myInstance/
【问题讨论】:
-
您可以通过管理控制台、WLST 或 JMX 更改日志级别...176.34.122.30/blog/2010/04/22/… 之类的东西对您有用还是您在问其他问题?
-
@DisplayNameismissing 类似这样的东西。但我无法更改任何服务器设置。所以我正在考虑一种简单的方法。
标签: java logback weblogic12c