Java 如何在jmx logger LogConsole中使用筛选器表达式?
我正在使用JMX Logger监控java web application.MBean服务器连接成功,我在JMX Logger LoggerConsole中看到日志,但我不知道如何在LoggerConsole中使用筛选器表达式。 这是我的配置文件Java 如何在jmx logger LogConsole中使用筛选器表达式?,java,logging,log4j,monitoring,Java,Logging,Log4j,Monitoring,我正在使用JMX Logger监控java web application.MBean服务器连接成功,我在JMX Logger LoggerConsole中看到日志,但我不知道如何在LoggerConsole中使用筛选器表达式。 这是我的配置文件 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ISO8601}%-5p %c{1} - %m%n"/>
</layout>
</appender>
<appender name="jmxlogger" class="jmxlogger.integration.log4j.JmxLogAppender">
<param name="Threshold" value="ALL"/>
<param name="ObjectName" value="jmxlogger:type=LogEmitter"/>
<param name="MBeanServer" value="platform"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ISO8601} %-5p %c{1} - %m%n"/>
</layout>
</appender>
<root>
<priority value ="DEBUG" />
<appender-ref ref="console" />
<appender-ref ref="jmxlogger" />
</root>
</log4j:configuration>
现在我的问题是我想过滤原始数据,例如我只高兴我将做什么?
请帮助我根据的Wiki 1,您需要参数FilterExpression
。表达式用法和运算符可能很有用。那么您的追加器将如下所示:
谢谢您的回复。但是在我的应用程序中有太多的日志,如事务日志、异常日志、错误日志等。此时我需要在运行时搜索不同的原始数据。我将做什么?请帮助我。使用操作符|
例如rawMessage包含“我很高兴!”|rawMessage包含“有问题”| | exceptionName包含“JDBCException”
我们不知道整个应用程序中是否有不同的数据日志,这意味着有大量日志,到时候我会怎么做?如果在运行时获取应用程序中的错误或异常后需要过滤特定日志。在这种情况下,将更快。当我在xml文件中使用d | |时,它会给出一个异常。即log4j:WARN未能将属性[filterExpression]设置为值“原始消息包含‘我很高兴!’rawMessage包含“有问题”| | exceptionName包含“JDBCException”。java.lang.reflect.InvocationTargetException