WebLogic Log4J2设置未打印调试消息
因此,我有一个简单的属性处理程序Java代码,该代码打印了这些记录仪。我使用的是Commons Loggging和Log4J2
import org.apache.commons.vfs2.FileObject;
import org.apache.commons.vfs2.FileSystemException;
import org.apache.commons.vfs2.FileSystemManager;
import org.apache.commons.vfs2.VFS;
import org.apache.commons.vfs2.impl.DefaultFileMonitor;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* Provides functions to get the property file from cache or load it into cache.
*
*/
public final class PropertiesHandler {
private static final Log logger = LogFactory.getLog(PropertiesHandler.class);
public static void main(String[] args) throws Exception {
logger.debug("(((((New debug logger used in Log4j2)))))");
logger.warn("(((((New warn logger used in Log4j2)))))");
logger.info("(((((New info logger used in Log4j2)))))");
logger.error("(((((New error logger used in Log4j2)))))");
logger.debug("Entering getPropertyValue");
logger.debug("propertyKey : [" + propertyKey + "]");
logger.debug("propertyFile : [" + propertyFile + "]");
}
....
<<Some other code>>
,该Log4J2用作JAR,并在WebLogic Server内部的服务中使用。
我的log4j2.xml被包装为罐子的一部分,
<Configuration status="error">
<Appenders>
<Console name="consoleLogger" target="SYSTEM_OUT">
<PatternLayout pattern="%-7p %d [%t] %c %x - %m%n" />
</Console>
<RollingFile name="fileLogger"
fileName="propertieshelper.log"
filePattern="${filename}.%d{yyyy-MM-dd}" append="true">
<PatternLayout pattern=" %-7p %d [%t] %c %x - %m%n" />
<SizeBasedTriggeringPolicy size="102400KB" />
<DefaultRolloverStrategy max="5" />
</RollingFile>
</Appenders>
<Loggers>
<Logger name="ca.bell" level ="debug">
<AppenderRef ref="fileLogger" />
<AppenderRef ref="consoleLogger" />
</Logger>
<Root level="error">
<AppenderRef ref="fileLogger" />
</Root>
</Loggers>
</Configuration>
现在看起来像是h的,当我将罐子作为独立的日食中时,它会打印我所需的记录仪。
.
.
.
ERROR 2022-04-29 13:45:36,705 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - Unable to lookup startup property appConfigPath, using propertieshelper.properties embedded in the jar
DEBUG 2022-04-29 13:45:36,712 [main] ca.bell.common.utlis.PropertiesLoader [] - Loading properties from class path : propertieshelper.properties
DEBUG 2022-04-29 13:45:36,712 [main] ca.bell.common.utlis.PropertiesLoader [] - Loading properties using input stream
DEBUG 2022-04-29 13:45:36,713 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - Derived default properties file : /opt/oracle/OSM/env.properties
DEBUG 2022-04-29 13:45:36,713 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - (((((New debug logger used in Log4j2)))))
WARN 2022-04-29 13:45:36,714 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - (((((New warn logger used in Log4j2)))))
INFO 2022-04-29 13:45:36,714 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - (((((New info logger used in Log4j2)))))
ERROR 2022-04-29 13:45:36,714 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - (((((New error logger used in Log4j2)))))
DEBUG 2022-04-29 13:45:36,714 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - Entering getPropertyValue
DEBUG 2022-04-29 13:45:36,718 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - propertyKey : [text]
DEBUG 2022-04-29 13:45:36,718 [main] ca.bell.dao.properties.handler.PropertiesHandler [
.
.
.
但是,当我在服务中使用此JAR并将应用程序部署到Weblogic Jar时,它不会仅打印“调试”日志。它确实打印了其余的。那我做错了什么?
- - 此属性处理程序应用程序的服务器端日志
.
.
.
5:19 AM EDT> <Warning> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New warn logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Info> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New info logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Error> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New error logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Warning> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New warn logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Info> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New info logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Error> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New error logger used in Log4j2)))))>
.
.
.
So i have a simple properties handler java code which prints these loggers . I am using commons logging and log4j2
import org.apache.commons.vfs2.FileObject;
import org.apache.commons.vfs2.FileSystemException;
import org.apache.commons.vfs2.FileSystemManager;
import org.apache.commons.vfs2.VFS;
import org.apache.commons.vfs2.impl.DefaultFileMonitor;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* Provides functions to get the property file from cache or load it into cache.
*
*/
public final class PropertiesHandler {
private static final Log logger = LogFactory.getLog(PropertiesHandler.class);
public static void main(String[] args) throws Exception {
logger.debug("(((((New debug logger used in Log4j2)))))");
logger.warn("(((((New warn logger used in Log4j2)))))");
logger.info("(((((New info logger used in Log4j2)))))");
logger.error("(((((New error logger used in Log4j2)))))");
logger.debug("Entering getPropertyValue");
logger.debug("propertyKey : [" + propertyKey + "]");
logger.debug("propertyFile : [" + propertyFile + "]");
}
....
<<Some other code>>
which is packaged as a jar and used inside a service inside weblogic server.
my log4j2.xml which is packaged as part of the jar looks like hthis
<Configuration status="error">
<Appenders>
<Console name="consoleLogger" target="SYSTEM_OUT">
<PatternLayout pattern="%-7p %d [%t] %c %x - %m%n" />
</Console>
<RollingFile name="fileLogger"
fileName="propertieshelper.log"
filePattern="${filename}.%d{yyyy-MM-dd}" append="true">
<PatternLayout pattern=" %-7p %d [%t] %c %x - %m%n" />
<SizeBasedTriggeringPolicy size="102400KB" />
<DefaultRolloverStrategy max="5" />
</RollingFile>
</Appenders>
<Loggers>
<Logger name="ca.bell" level ="debug">
<AppenderRef ref="fileLogger" />
<AppenderRef ref="consoleLogger" />
</Logger>
<Root level="error">
<AppenderRef ref="fileLogger" />
</Root>
</Loggers>
</Configuration>
now when i run my jar as a standalone in eclipse it prints my needed loggers.
.
.
.
ERROR 2022-04-29 13:45:36,705 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - Unable to lookup startup property appConfigPath, using propertieshelper.properties embedded in the jar
DEBUG 2022-04-29 13:45:36,712 [main] ca.bell.common.utlis.PropertiesLoader [] - Loading properties from class path : propertieshelper.properties
DEBUG 2022-04-29 13:45:36,712 [main] ca.bell.common.utlis.PropertiesLoader [] - Loading properties using input stream
DEBUG 2022-04-29 13:45:36,713 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - Derived default properties file : /opt/oracle/OSM/env.properties
DEBUG 2022-04-29 13:45:36,713 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - (((((New debug logger used in Log4j2)))))
WARN 2022-04-29 13:45:36,714 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - (((((New warn logger used in Log4j2)))))
INFO 2022-04-29 13:45:36,714 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - (((((New info logger used in Log4j2)))))
ERROR 2022-04-29 13:45:36,714 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - (((((New error logger used in Log4j2)))))
DEBUG 2022-04-29 13:45:36,714 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - Entering getPropertyValue
DEBUG 2022-04-29 13:45:36,718 [main] ca.bell.dao.properties.handler.PropertiesHandler [] - propertyKey : [text]
DEBUG 2022-04-29 13:45:36,718 [main] ca.bell.dao.properties.handler.PropertiesHandler [
.
.
.
but when i use this jar within my service and deploy the app to weblogic jar it does NOT print the "debug" logs ONLY. it does Prints the rest. So what am i doing wrong ?
--
server side logs for this properties handler app
.
.
.
5:19 AM EDT> <Warning> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New warn logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Info> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New info logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Error> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New error logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Warning> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New warn logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Info> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New info logger used in Log4j2)))))>
<Apr 29, 2022 3:15:19 AM EDT> <Error> <ca.bell.dao.properties.handler.PropertiesHandler> <BEA-000000> <(((((New error logger used in Log4j2)))))>
.
.
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论