2016-12-16 79 views
0

我正在使用activemq 5.14.0。將activemq駱駝路由消息記錄到專用日誌文件

我想使用這裏指定的方法:http://camel.apache.org/logeip.html

下方的配置細節。

但tt不起作用。這個配置有什麼問題。

--- 
--- 
--- 

camel.xml: 

<bean id="debugLogger" class="org.slf4j.LoggerFactory" factory-method="getLogger" xmlns="http://www.springframework.org/schema/beans"> 
    <constructor-arg value="it.myclass" /> 
</bean> 

I also tried with: 

<bean id="debugLogger" class="io.fabric8.insight.log.log4j.Log4jLogQuery" factory-method="getLogger" xmlns="http://www.springframework.org/schema/beans"> 
    <constructor-arg value="it.myclass" /> 
</bean> 

     <camel:route id="AAA" inheritErrorHandler="true"> 
      <camel:description>TSM Trading Segment Notifications Route</camel:description> 
      <camel:from uri="ref:AAA" /> 
      <camel:multicast parallelProcessing="true"> 
       <camel:filter> 
        <camel:simple>${header.TradingSegmentId} == "A"</camel:simple> 
        <camel:to uri="ref:AAA" /> 
        <camel:log message="debug ${body}" loggingLevel="INFO" loggerRef="debugLogger"> 
       </camel:filter> 
       <camel:filter> 
         <camel:simple>${header.TradingSegmentId} == "B"</camel:simple> 
         <camel:to uri="ref:BBB"/> 
       </camel:filter> 
       <camel:to uri="ref:pt-tsm-ts-cnom-unfiltered" /> 
      </camel:multicast> 
     </camel:route> 

--- 
--- 
--- 

log4j.properties: 

log4j.logger.it.myclass=DEBUG, debugLogfileAppender 

# Debug messages - appender Custom 
log4j.appender.debugLogfileAppender=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.debugLogfileAppender.file=${activemq.base}/data/activemq-debugLogfile.log 
log4j.appender.debugLogfileAppender.DatePattern='.'yyyy-MM-dd-HH 
log4j.appender.debugLogfileAppender.append=true 
log4j.appender.debugLogfileAppender.layout=org.apache.log4j.PatternLayout 
log4j.appender.debugLogfileAppender.layout.ConversionPattern=%d [%-15.15t] - %-5p %-30.30c{1} - %-10.10X{activemq.broker} %-20.20X{activemq.connector} %-10.10X{activemq.destination} - %m%n 

回答

1

您不需要在XML中聲明記錄器。只需使用「logName」屬性並將「記錄器」添加到log4j.properties。

<log logName="com.company.debugLogger" ... />

然後添加記錄到log4j.properties文件

log4j.logger.com.company.debugLogger=INFO