在ServiceMix中部署时,Camel路由不会记录

时间:2015-04-02 09:55:35

标签: apache-camel log4j apache-servicemix

我在下面的文章中提到并创建了依赖项和log4j属性 http://camel.apache.org/how-do-i-use-log4j.html

这是我的简单路线

from("direct:start")
    .routeId("LogEipInfoLevelRoute")
    .log(LoggingLevel.INFO, "Displaying Something - ${body}")
    .to("mock:result");

在servicemix中部署路由后,即时检查服务组合日志。我找不到任何此类消息。除了具有指定id的路由创建消息。

我在错误的地方检查吗?

3 个答案:

答案 0 :(得分:2)

您需要向direct:start端点发送消息,以确定是否发生任何事情。

如果你只想看到正在发生的事情,那么你可以使用计时器而不是直接计时器,例如

from("timer:foo?period=5000")

每隔5秒计算一条新消息。请注意,消息正文是来自计时器的null

答案 1 :(得分:1)

我假设您使用的是基于OSGI的ServiceMix版本

请在karaf控制台中执行以下命令:

karaf@root> log:display | grep Displaying

有关ServiceMix日志记录系统的更多信息,请参阅http://servicemix.apache.org/docs/4.4.x/users-guide/logging-system.html

答案 2 :(得分:1)

你必须把东西传递给直接:开始做某事。您可以在此处详细了解如何使用直接:http://camel.apache.org/direct.html

我建议您使用计时器启动路线。一旦您的路由被计时器启动,您的日志将被写入您的日志文件。