pyspark禁用日志记录到STDOUT

时间:2018-03-12 10:10:12

标签: python apache-spark logging pyspark

我一直在使用PySpark并且遇到了日志记录问题。来自Spark模块的日志通过管道传输到STDOUT,我无法控制来自Python的日志。

例如,像这样的日志被传送到STDOUT而不是STDERR:

  

2018-03-12 09:50:10 WARN Utils:66 - 截断字符串   计划的代表,因为它太大了。这种行为可以   通过在SparkEnv.conf中设置'spark.debug.maxToStringFields'进行调整。

Spark未安装在环境中,仅PythonPyspark

我如何:

:一种。将所有日志重定向到STDERR

OR

B中。如果无法做到这一点,请禁用日志。

我尝试过的事情:

  1. 我曾尝试使用pyspark.SparkConf(),但我配置的任何内容似乎都无法使用。
  2. 我尝试创建SparkEnv.conf并设置SPARK_CONF_DIR以匹配以检查我是否至少可以禁用上面的示例日志,但无济于事。
  3. 我试过看documentation,但没有说明如何完成我的尝试。

1 个答案:

答案 0 :(得分:1)

您可以将日志级别设置为ERROR,因此它只会显示ERROR日志:

   -webkit-font-smoothing: antialiased;

但是如果要禁用所有PySpark日志,可以执行以下操作:

sc.setLogLevel("ERROR")  # sc is a SparkContext() object from the pyspark lib

选中此Stack Thread