gpt4 book ai didi

apache-spark - 如何减少 EMR 中 Apache Spark 的日志?

转载 作者:行者123 更新时间:2023-12-05 07:40:39 24 4
gpt4 key购买 nike

我对在 AWS EMR 上运行的 Apache Spark 作业有疑问。每次执行 Spark 作业时,它都会生成大量日志,在我的例子中,日志大小约为 5-10GB,但 80% 的日志是信息(无用),我该如何减少这些日志?

我在 Spark 中使用 log4j2 将日志级别更改为“警告”以避免不必要的日志,但是由于来自不同组件的那些日志在 spark 中,一些来自 YARN 的日志,一些来自 EMR 的日志,它合并在一起。那么如何解决这个问题呢?有没有人有这样的经历?因为对我来说,我不想重新配置集群中的每个节点。

我已经尝试了下面的解决方案,似乎它在 EMR 中不起作用

Logger logger = LogManager.getLogger("sparklog");
logger.setlevel()

下面的xml配置。

String used to match the log4j2.xml configuration files
<Configuration status="WARN" monitorInterval="300">////reload the configuration file each 300 seconds
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" /> //// control output format
</Console>
</Appenders>
<Loggers>
<Logger name="sparklog" level="warn" additivity="false">//// configuration the myloger loger level
<AppenderRef ref="Console" />
</Logger>
<Root level="error">
<AppenderRef ref="Console" />
</Root>
</Loggers>
</Configuration>

最佳答案

由于没有人回答我的问题,所以我在这里自己解决了问题。1.将配置文件上传到您的主节点。

scp -i ~/.ssh/emr_dev.pem /Users/x/log4j_files/log4j.properties hadoop@ec2-xxx-xxx-xxx.eu-west-1.compute.amazonaws.com:/usr/tmp/

2.在你的提交脚本中附上

"--files": "/usr/tmp/log4j.properties"

上述解决方案对我来说工作正常。

关于apache-spark - 如何减少 EMR 中 Apache Spark 的日志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45954276/

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