使用 log4j 的 Hadoop Yarn 任务级日志记录

标签 hadoop log4j mapreduce task

我一直在尝试在任务级别设置 Hadoop 日志记录,但到目前为止没有成功。

我修改了 log4j.properties 并将许多参数设置为 DEBUG 级别:

  • log4j.logger.org.apache.hadoop.mapred.Task=DEBUG
  • log4j.logger.org.apache.hadoop.mapred.MapTask=DEBUG
  • log4j.logger.org.apache.hadoop.mapred.ReduceTask=DEBUG
  • log4j.logger.org.apache.hadoop = DEBUG

但是,我无法从正在记录的任务中看到任何 LOG.info 或 LOG.debug 消息。这是在启用 Yarn 的情况下。

我不确定我在配置中遗漏了什么以使其正常工作。我想我最终应该在 nodemanage.out 日志文件中获取这些消息吗?

最佳答案

您应该能够从 Yarn 控制台看到您的应用程序日志消息,但到达那里的路径有几个步骤。

1.) 转到 Yarn 控制台,通常是 http://yourserver:8088 2.) 转到工具->本地日志 3.) 找到“用户日志”链接并选择它 4.) 找到您的应用程序,例如带有“application”前缀而不是“job”前缀的 MapReduce 作业名称并选择它。 5.) 然后在容器日志下,通常是“syslog”,您应该可以找到您的作业级别日志记录。

完整的示例路径如下。 http://yourserver:8088/logs/userlogs/application_1427820474064_0003/container_1427820474064_0003_01_000019/syslog

关于使用 log4j 的 Hadoop Yarn 任务级日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11225590/

相关文章:

mongodb - hadoop中的Analytics(分析)实现

hadoop - 通过 map reduce 中的 map 函数的文件

java - 将旧版 e.printStractTrace() 记录到 log4j

hadoop - pig : Unable to Load BAG

hadoop - 如何从 Hadoop 中的 MapFile 中删除条目

hadoop - HBase 0.98.5 无法在 Windows 上启动

hadoop - 在hadoop 2.0中应该使用哪个库?

单个项目中的 Java 库使用不同版本的 log4j

java - 合并两个 log4j.properties 文件

hadoop - map 错误 - Attempy_xxxx_ 600 秒后超时