rocket mq Logappender示例——支持log4j等

来源:互联网 发布:云计算服务级别sla 编辑:程序博客网 时间:2024/06/06 04:44

Logappender示例


RocketMQ logappender提供了log4j appender,log4j2 appender和logback appender,用于使用,下面是配置示例。

log4j的

当使用log4j属性配置文件时,配置如下。

log4j.appender.mq=org.apache.rocketmq.logappender.log4j.RocketmqLog4jAppenderlog4j.appender.mq.Tag=yourTaglog4j.appender.mq.Topic=yourLogTopiclog4j.appender.mq.ProducerGroup=yourLogGrouplog4j.appender.mq.NameServerAddress=yourRocketmqNameserverAddresslog4j.appender.mq.layout=org.apache.log4j.PatternLayoutlog4j.appender.mq.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-4r [%t] (%F:%L) %-5p - %m%n

当使用log4j xml配置文件时,将其配置为此,并添加一个异步appender:

<appender name="mqAppender1" class="org.apache.rocketmq.logappender.log4j.RocketmqLog4jAppender">    <param name="Tag" value="yourTag" />    <param name="Topic" value="yourLogTopic" />    <param name="ProducerGroup" value="yourLogGroup" />    <param name="NameServerAddress" value="yourRocketmqNameserverAddress"/>    <layout class="org.apache.log4j.PatternLayout">        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss}-%p %t %c - %m%n" />    </layout></appender><appender name="mqAsyncAppender1" class="org.apache.log4j.AsyncAppender">    <param name="BufferSize" value="1024" />    <param name="Blocking" value="false" />    <appender-ref ref="mqAppender1"/></appender>

log4j2

当使用log4j2,配置为这个。如果你想要无阻塞,只需配置一个asyncAppender作为参考。

<RocketMQ name="rocketmqAppender" producerGroup="yourLogGroup" nameServerAddress="yourRocketmqNameserverAddress"     topic="yourLogTopic" tag="yourTag">    <PatternLayout pattern="%d [%p] hahahah %c %m%n"/></RocketMQ>

的logback

使用logback时,还需要一个asyncAppender。

<appender name="mqAppender1" class="org.apache.rocketmq.logappender.logback.RocketmqLogbackAppender">    <tag>yourTag</tag>    <topic>yourLogTopic</topic>    <producerGroup>yourLogGroup</producerGroup>    <nameServerAddress>yourRocketmqNameserverAddress</nameServerAddress>    <layout>        <pattern>%date %p %t - %m%n</pattern>    </layout></appender><appender name="mqAsyncAppender1" class="ch.qos.logback.classic.AsyncAppender">    <queueSize>1024</queueSize>    <discardingThreshold>80</discardingThreshold>    <maxFlushTime>2000</maxFlushTime>    <neverBlock>true</neverBlock>    <appender-ref ref="mqAppender1"/></appender>

原创粉丝点击