【发布时间】:2019-10-18 13:18:18
【问题描述】:
我正在使用 PySpark 运行 Python 脚本(和测试),并希望从日志中删除不相关的信息。
每次我启动它们时,我都会在控制台中显示以下消息:
将默认日志级别设置为“WARN”。
要调整日志级别,请使用 sc.setLogLevel(newLevel)。对于 SparkR,使用 setLogLevel(newLevel)。
我怎样才能完全删除它? (最好在 log4j.properties 中)
我已经尝试过的:
我在 log4j.properties 中设置了log4j.rootCategory=ERROR, console。
如消息所述执行sc.setLogLevel(newLevel) 仅适用于以下日志,而不适用于脚本开头。
在 log4j.properties 中设置 log4j.logger.org.apache.spark=ERROR 不会删除该消息。
我搜索了很多,但找不到相关配置。
从Spark Github(在Logging.scala 中),我可以看到有一个silent 变量用于显示消息,但我找不到它的更改位置:
if (!silent) {
System.err.printf("Setting default log level to \"%s\".\n", replLevel)
System.err.println("To adjust logging level use sc.setLogLevel(newLevel). " +
"For SparkR, use setLogLevel(newLevel).")
}
提前感谢您的帮助,
【问题讨论】:
标签: python-3.x apache-spark pyspark log4j