通过 python sript 关闭 pyspark 日志记录

eir*_*era 2 apache-spark pyspark

如何从 python 脚本关闭 pyspark 日志记录?请注意:我不想对 Spark 记录器属性文件进行任何更改。

mka*_*ran 6

要从 python 脚本中删除(或修改)日志记录:

conf = SparkConf()
conf.set('spark.logConf', 'true')  # necessary in order to be able to change log level
... # other stuff and configuration

# create the session
spark = SparkSession.builder\
    .config(conf=conf) \
    .appName(app_name) \
    .getOrCreate()

# set the log level to one of ALL, DEBUG, ERROR, FATAL, INFO, OFF, TRACE, WARN
spark.sparkContext.setLogLevel("OFF")
Run Code Online (Sandbox Code Playgroud)

文档配置

文档 setLogLevel

希望这有帮助,祝你好运!

编辑:对于早期版本,例如 1.6,您可以尝试从这里获取的类似以下内容

logger = sc._jvm.org.apache.log4j
logger.LogManager.getLogger("org"). setLevel(logger.Level.OFF)
# or
logger.LogManager.getRootLogger().setLevel(logger.Level.OFF)
Run Code Online (Sandbox Code Playgroud)

不幸的是,我还没有测试过,请告诉我它是否有效。