【问题标题】:How to configure the log level of a specific logger using log4j in pyspark?如何在 pyspark 中使用 log4j 配置特定记录器的日志级别?
【发布时间】:2017-06-04 02:10:33
【问题描述】:

this StackOverflow 线程,我知道如何在 pyspark 中获取和使用 log4j 记录器,如下所示:

from pyspark import SparkContext
sc = SparkContext()
log4jLogger = sc._jvm.org.apache.log4j
LOGGER = log4jLogger.LogManager.getLogger('MYLOGGER')
LOGGER.info("pyspark script logger initialized")

这适用于 spark-submit 脚本。

我的问题是如何修改log4j.properties 文件来配置这个特定 logger 的日志级别或如何动态配置它?

【问题讨论】:

    标签: logging apache-spark log4j pyspark


    【解决方案1】:

    关于如何通过 log4j.properties 文件配置 log4j 还有其他答案,但是我没有看到有人提到如何动态地进行配置,所以:

    from pyspark import SparkContext
    sc = SparkContext()
    log4jLogger = sc._jvm.org.apache.log4j
    LOGGER = log4jLogger.LogManager.getLogger('MYLOGGER')
    
    # same call as you'd make in java, just using the py4j methods to do so
    LOGGER.setLevel(log4jLogger.Level.WARN)
    
    # will no longer print
    LOGGER.info("pyspark script logger initialized") 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多