Apache spark 阻止Spark执行器日志被压缩

Apache spark 阻止Spark执行器日志被压缩,apache-spark,emr,amazon-emr,Apache Spark,Emr,Amazon Emr,我有一份很有活力的工作,有一些很长时间的任务。当任务开始时,我可以转到“执行者”选项卡,查看我的所有执行者及其任务。我可以点击stderr链接查看这些任务的日志,这对监控非常有帮助。但是,几个小时后,stderr链接停止工作。如果单击它,您会看到java.lang.Exception:在本地磁盘上找不到此日志。。我深入研究了一下,问题似乎是有什么东西决定对日志进行gzip处理。也就是说,我仍然可以通过ssh连接到工作节点并查找正确的目录(例如,/mnt/var/log/hadoop-warn/c

我有一份很有活力的工作,有一些很长时间的任务。当任务开始时,我可以转到“执行者”选项卡,查看我的所有执行者及其任务。我可以点击
stderr
链接查看这些任务的日志,这对监控非常有帮助。但是,几个小时后,stderr链接停止工作。如果单击它,您会看到
java.lang.Exception:在本地磁盘上找不到此日志。
。我深入研究了一下,问题似乎是有什么东西决定对日志进行gzip处理。也就是说,我仍然可以通过ssh连接到工作节点并查找正确的目录(例如,
/mnt/var/log/hadoop-warn/containers/application\u 1486407288470\u 0005/container\u 1486407288470\u 0005\u 01\u000002/stderr.gz
)来手动查找日志。这种情况很烦人,因为我现在无法从UI监控我的工作。此外,文件非常小,因此压缩似乎没有帮助(40k未压缩)。似乎有很多事情可能导致这种情况发生:纱线、logroller cron作业、我的纱线/Spark发行版中的log4j配置、AWS(因为EMR将日志压缩并保存到S3)等等。所以我希望有人能给我指出正确的方向,这样我就不必搜索太多文档了


我在
EMR-5.3.0
上使用AWS EMR,没有任何自定义引导步骤。

刚刚遇到类似问题。我没有搜索如何阻止gzip的发生,但是您可以使用hadoop接口访问日志

在左侧菜单的“工具”>“本地日志”下

然后浏览找到您感兴趣的日志

在我的例子中,来自gui的gzip位于/node/containerlogs/container_14983803655_0037_01_000001/hadoop/stderr.gz/?start=-4096 使用本地日志菜单,它处于 /日志/容器/应用程序_1498033803655_0037/容器_1498033803655_0037_01_000001/stderr.gz


希望有帮助

那么,这是间歇性的吗?是的。它只发生在长时间运行的作业上,并不总是发生在所有执行者身上。