Spark 2.0+日志关闭问题:pip安装PySpark找不到log4j配置文件
解决pip安装PySpark时无法通过log4j配置文件关闭日志的问题
我之前也碰到过一模一样的问题!查过相关方案后发现,那些针对源码安装Spark的方法(比如修改conf/log4j.properties.template配置文件)对pip安装的PySpark完全不适用——根本找不到这个文件!
后来我找到了一个用代码直接控制日志级别的替代方案,亲测有效,分享给你:
def quiet_logs(sc): logger = sc._jvm.org.apache.log4j logger.LogManager.getLogger("org").setLevel(logger.Level.ERROR) logger.LogManager.getLogger("akka").setLevel(logger.Level.ERROR)
使用起来也很简单,只需要在初始化SparkContext之后调用这个函数就行:
from pyspark import SparkContext, SparkConf # 初始化Spark配置和上下文 conf = SparkConf().setAppName("YourAppName").setMaster("local[*]") sc = SparkContext(conf=conf) # 调用函数关闭冗余日志 quiet_logs(sc)
这样就能把org和akka这两个主要日志源的级别调到ERROR,过滤掉那些烦人的INFO和DEBUG级别的日志输出了。
内容的提问来源于stack exchange,提问作者letsBeePolite
相关产品推荐
相关产品推荐

