【问题标题】:Disable INFO messages in Spark for an specific application在 Spark 中为特定应用程序禁用 INFO 消息
【发布时间】:2018-02-04 11:39:13
【问题描述】:

我尝试在特定应用程序中禁用 Spark 中的 INFO 消息,但我不能,我仍然看到它。

我尝试的代码来自这里:(How to stop messages displaying on spark console?)

import org.apache.log4j.Logger
import org.apache.log4j.Level

Logger.getLogger("org").setLevel(Level.OFF)
Logger.getLogger("akka").setLevel(Level.OFF)`

我还编辑了 Spark 安装目录中的 log4j 文件,如下:

log4j.rootCategory=WARN, console

它奏效了!但这不是我想要的解决方案......我想禁用每个应用程序的 INFO 消息。

有没有cmets?谢谢!!

【问题讨论】:

    标签: apache-spark log4j


    【解决方案1】:

    你必须这样做:

    import org.apache.log4j.Logger
    import org.apache.log4j.Level
    
    Logger.getLogger("org").setLevel(Level.OFF)
    Logger.getLogger("akka").setLevel(Level.OFF)
    

    创建SparkContext之前。
    做这样的事情:

    Logger.getLogger("org").setLevel(Level.OFF)
    Logger.getLogger("akka").setLevel(Level.OFF)
    val sc = new SparkContext(conf)
    

    另外,你可以使用getRootLogger方法:

    Logger.getRootLogger().setLevel(Level.ERROR)
    

    【讨论】:

    • 谢谢,你是对的,两种方法都有效!只是,请在“做这样的事情:”之后编辑代码,如你所说,将 val sc... 行放在最后:)
    • 是的,那是我的错)谢谢。
    • 在创建 SparkContext 之前是否有类似的方法来禁用 pyspark 中的日志记录?
    猜你喜欢
    • 2022-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-04
    • 2016-04-03
    • 1970-01-01
    相关资源
    最近更新 更多