关闭火花2.0 的日志记录



我确实遵循了现有的stackoverflow链接,尽管如果从源安装了Spark,则可以接受的答案。

但是,我通过pip安装了pyspark,因此我无法找到conf/log4j.properties.template以静音。

我正在使用以下来自同一链接的替代解决方案:

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 )

上面的解决方案仍然允许启动并关闭终端上的火花信息,如果我能够更新conf/log4j.properties.template

任何建议将不胜感激。

您可以在调用命令时覆盖pyspark的默认log4j配置,您无需修改全局文件。使用名称log4j-quiet.properties和内容创建一个文件:

log4j.rootCategory=WARN, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n

然后以:

启动pyspark
$ pyspark --driver-java-options '-Dlog4j.configuration=file:log4j-quiet.properties'

和从启动和关闭的记录消息将消失。

最新更新