Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 删除启动消息以更改Spark日志级别_Python 3.x_Apache Spark_Pyspark_Log4j - Fatal编程技术网

Python 3.x 删除启动消息以更改Spark日志级别

Python 3.x 删除启动消息以更改Spark日志级别,python-3.x,apache-spark,pyspark,log4j,Python 3.x,Apache Spark,Pyspark,Log4j,我正在用PySpark运行Python脚本(和测试),希望从日志中删除不相关的信息 每次启动它们时,控制台中都会显示以下消息: 将默认日志级别设置为“警告” 要调整日志记录级别,请使用sc.setLogLevel(newLevel)。对于SparkR,使用setLogLevel(newLevel) 我如何才能完全移除它?(理想情况下在log4j.属性中) 我已经尝试过的: 我在log4j.properties中设置了log4j.rootCategory=ERROR,console 按照消息所述

我正在用PySpark运行Python脚本(和测试),希望从日志中删除不相关的信息

每次启动它们时,控制台中都会显示以下消息:

将默认日志级别设置为“警告”

要调整日志记录级别,请使用sc.setLogLevel(newLevel)。对于SparkR,使用setLogLevel(newLevel)

我如何才能完全移除它?(理想情况下在log4j.属性中)


我已经尝试过的: 我在log4j.properties中设置了
log4j.rootCategory=ERROR,console

按照消息所述执行
sc.setLogLevel(newLevel)
,仅适用于以下日志,而不适用于脚本开头

log4j.properties中设置
log4j.logger.org.apache.spark=ERROR
不会删除该消息

我对此进行了大量搜索,但找不到相关配置


从(Logging.scala)中,我可以看到有一个
silent
变量用于显示消息,但我找不到它的更改位置:

如果(!静默){
System.err.printf(“将默认日志级别设置为\%s\”\n,replLevel)
System.err.println(“要调整日志记录级别,请使用sc.setLogLevel(newLevel)。”+
“对于SparkR,使用setLogLevel(newLevel)。”
}

提前感谢您的帮助,

我找到了解决方案

就在我引用的代码之前,有:

if (replLevel != rootLogger.getEffectiveLevel()) {
  if (!silent) {
     ...
  }
}
这意味着不必尝试更改
silent
变量,可以在log4j.properties中将
repl
root
记录器的日志级别设置为不同,以获得相同的结果:

log4j.rootCategory=WARN, console
log4j.logger.org.apache.spark.repl.Main=ERROR
您还可以添加
log4j.logger.org.apache.spark=ERROR
,以删除spark中可能出现的其他警告。

我找到了一个解决方案

就在我引用的代码之前,有:

if (replLevel != rootLogger.getEffectiveLevel()) {
  if (!silent) {
     ...
  }
}
这意味着不必尝试更改
silent
变量,可以在log4j.properties中将
repl
root
记录器的日志级别设置为不同,以获得相同的结果:

log4j.rootCategory=WARN, console
log4j.logger.org.apache.spark.repl.Main=ERROR
您还可以添加
log4j.logger.org.apache.spark=ERROR
,以删除spark中可能出现的其他警告