gpt4 book ai didi

java - 使用 Apache Camel 记录到外部文件

转载 作者:行者123 更新时间:2023-12-01 17:21:05 25 4
gpt4 key购买 nike

我有一个 Camel Route,它使用 CSV 文件,将其转换为 XML 并将数据流式传输到 ActiveMQ 主题。我只想记录来自 Camel Route 的消息,以及有关处理消息的详细日志消息等。

代码:

public void configure() throws Exception {

from("file:src/main/resources?fileName=data-sample.csv")
.log("My first log message")
.process(new MyTransformRevised1())
.to("file:src/main/resources/?fileName=emp.xml")
.split(body().tokenizeXML("equityFeeds", null))
.streaming()
.to("jms:topic:reuters.inbound.Topic");
}

添加 log4j.properties 文件:

# Root logger option
log4j.rootLogger=INFO, file, console

log4j.logger.org.apache.camel=DEBUG

log4j.logger.camelprojectupdated.CSVToXMLTransformationRevised1=INFO, file

# camelprojectupdated.CSVToXMLTransformationRevised1 - fully qualified class name of my project. camelprojectupdated is my package name and CSVToXMLTransformationRevised1 is my class name.

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=camel.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d | %p | %F %L | %m%n

# Direct log messages to stdout
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{HH:mm}| %p | %F %L | %m%n

应该是log4j.properties还是log4j2.properties?我还应该有 log4j 或 log4j2 例如: log4j2.appender.console 而不是 log4j.appender.console

要求:

  1. 我想使用 slf4j 并将输出记录到文件和控制台。
  2. 在哪里给出日志文件名称和位置、ConsoleFileAppenderRollingFileAppender

问题:

即使在控制台中我也无法看到日志。我的日志文件没有被创建。我已将 log4j.properties 文件放置在类文件夹中。即使我想使用 slf4j,是否也必须将 log4j.jar 放在类路径中?

事情变得非常困难。

最佳答案

您可以加载记录器属性文件并设置记录器以供使用(log4j)。

public enum Logger {
INSTANCE;
public void initializeLogger() {
PropertyConfigurator.configure(Logger.class.getResource("log4j.properties"));
}
}

关于java - 使用 Apache Camel 记录到外部文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61288525/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com