0

如果您运行 hadoop flume 节点,默认情况下它会使用 log4j 在 /var/log/flume 下生成日志。这些文件看起来像

/var/log/flume/flume-$FLUME_IDENT_STRING-$command-$HOSTNAME.log

根据此处的水槽用户指南,更改水槽日志配置的唯一方法是通过使用 Flume 环境变量运行水槽节点的 flume-daemon.sh,例如:

export FLUME_LOGFILE=flume-$FLUME_IDENT_STRING-$command-$HOSTNAME.log
export FLUME_ROOT_LOGGER="INFO,DRFA"
export ZOOKEEPER_ROOT_LOGGER="INFO,zookeeper"
export WATCHDOG_ROOT_LOGGER="INFO,watchdog"

问题是:

  1. 如果我想将日志级别从 INFO 更改为 DEBUG,这是唯一的地方吗?
  2. 有没有我可以做到这一点的配置?
  3. 如果我想将一些包的日志级别设置为 DEBUG 而其他包保留 INFO 呢?
4

2 回答 2

1

检查是否存在 log4j.properties 或 log* 相关文件以设置变量——这也将允许您检查并让日志记录部分的某些组件执行过多/DEBUG,而其他组件执行 INFO。

于 2012-05-02T17:10:01.983 回答
1

注意到 /etc/flume/conf.empty 下有一个 log4j.properties。复制到/etc/flume/conf,重启flume节点服务,log4j.properties文件开始生效。

最重要的顺序就像flume-env.sh->flume-daemon.sh->log4j.properties。

例如。如果您在flue-daemon.sh 中将flume_root_logger 设置为DEBUG,它将覆盖您在log4j.properties 中为root_logger 所做的任何设置。

于 2012-05-02T21:06:02.730 回答