【问题标题】:How to enable tracing logs in Apache Camel 3.x?如何在 Apache Camel 3.x 中启用跟踪日志?
【发布时间】:2021-01-04 06:03:57
【问题描述】:

我正在尝试从 Camel 2.X 迁移到 3.X,并且对骆驼日志记录有疑问。

我可以通过在骆驼上下文中启用 .tracing() 来设置路线跟踪。要调试一些问题,仅路由跟踪是不够的,必须能够在跟踪中查看骆驼日志。

我在自定义 log4j 配置中启用了跟踪级别,如下所示。

name="org.apache.camel" level="TRACE"

但我无法从 Camel 获取跟踪日志。

例如。日志如下:

if (LOG.isTraceEnabled()) { LOG.trace("等待异步回调,然后继续进行 exchangeId: {} -> {}", exchange.getExchangeId(), exchange); }

来自DefaultAsyncProcessorAwaitManager

有没有人如何启用 Camel 跟踪日志或在哪里可以找到相关信息?

谢谢!

【问题讨论】:

    标签: logging apache-camel trace-logging


    【解决方案1】:

    我在使用以下 log4j2 配置时看到了 TRACE 日志:

    appender.out.type = Console
    appender.out.name = out
    appender.out.layout.type = PatternLayout
    appender.out.layout.pattern = %d [%15.15t] %highlight{%-5p} %-30.30c - %m%n
    rootLogger.level = INFO
    rootLogger.appenderRef.out.ref = out
    
    loggers = mine,camel
    logger.mine.name = org.example
    logger.mine.level = INFO
    logger.camel.name = org.apache.camel
    logger.camel.level = TRACE
    

    【讨论】:

    • 我已将 org.apache.camel 设置为 TRACE 级别。但是,我只能从 org.apache.camel.component.jms.DefaultJmsMessageListenerContainer 类中看到跟踪日志,而不能从任何其他骆驼类中看到。知道为什么吗?我错过了什么吗?
    猜你喜欢
    • 2017-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-09
    • 1970-01-01
    相关资源
    最近更新 更多