madhu
madhu

Reputation: 1103

How can i use Filter Expression in jmx logger LogConsole?

I am using JMX Logger for monitoring java web application.MBean Server connect successfully and i see logs in JMX logger LoggerConsole but i dont know how to use Filter Expression in loggerconsole. this is my configuration file

<?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>

enter image description here

now my question is i want to filter trough raw data for example I am happy only what i will do? please help me

Upvotes: 3

Views: 430

Answers (1)

Paul Vargas
Paul Vargas

Reputation: 42030

According to the Wiki 1 of JmxLogger, you need the parameter FilterExpression. The expression use MVEL and the contains operator can be useful. Then your appender would be as follows:

<appender name="jmxlogger" class="jmxlogger.integration.log4j.JmxLogAppender">
    <param name="FilterExpression" value="rawMessage contains 'I am happy!'"/>
    <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>

Notes

  1. A quick guide on how to use JmxLogger, https://code.google.com/p/jmx-logger/wiki/JmxLoggerUsage

Upvotes: 1

Related Questions