1

我们正在运行一个 Java 项目,该项目使用 log4j 生成大量日志消息,这些消息当前存储在文件系统上的普通文件中。因为该项目在多台服务器上运行,我们希望单个实例将日志发送到进一步处理。因为我们已经在服务器上运行 JVM,所以我们正在考虑为此使用kestrel 。

作为 log4j 和 kestrel 的新手,我们想知道是否有一种方法可以配置 log4j 以便它直接写入安装在同一台服务器上的 kestrel?

4

1 回答 1

2

对于您的用例(将日志放在集中位置),我会使用 Kestrel 以外的其他东西。

Kafka是一个 Apache 孵化器项目,起源于 Linkedin。Kafka 有一个很棒的 Log4j appender,您只需在 log4j.properties 文件中指定 appender。

Flume 是另一个很棒的收集日志的软件。Kafka 就像一个消息队列,您可以从队列中读取日志行并对其进行处理,而 Flume 只会将您的日志转储到中央服务器或 S3 或 Hadoop 中。Flume 还有一个 log4j appender。

于 2012-06-22T20:09:33.177 回答