gpt4 book ai didi

hadoop - 执行后保留来自 Hadoop 作业的日志

转载 作者:可可西里 更新时间:2023-11-01 15:39:40 24 4
gpt4 key购买 nike

我想知道是否有一种简单的方法可以获取特定运行的所有作业日志/任务尝试日志,并将它们保存在某个地方(也许是 HDFS)?

我知道日志位于 /var/log/hadoop-0.20-mapreduce/userlogs 的本地文件系统中,用于任何特定作业的任务尝试,并且我可以将脚本写入 SSH 以每个从节点并将它们全部收集起来。但是,如果有意义的话,我会尽量避免这种情况 - 也许有一些我不知道的 Hadoop 内置功能?

我确实找到了 this link ,这是旧的,但包含一些有用的信息 -- 但不包括我正在寻找的答案。

mapreduce.job.userlog.retain.hours 默认设置为 24,因此任何作业的日志都会在 1 天后自动清除。除了增加 retain.hours 参数的值以使这些持续存在之外,我还能做些什么吗?

最佳答案

我不知道开箱即用的任何东西,但我已经手动完成了类似的事情。

我们设置了每 20 分钟运行一次的 cron 作业,以查找任务尝试的新日志,然后将它们全部泵入 HDFS 的特定目录中。我们修改了文件名,以便附加它来自的主机名。然后,我们让 MapReduce 作业尝试查找问题、计算运行时等统计数据。这非常巧妙。我们也对 NameNode 日志做了类似的事情。

关于hadoop - 执行后保留来自 Hadoop 作业的日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18491081/

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