如何摆脱"使用Spark的默认log4j配置文件:org/apache/spark/log4j-defaults.properties"消息?

Sea*_*ull 8 log4j apache-spark

我试图压制消息

Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties
Run Code Online (Sandbox Code Playgroud)

当我运行我的Spark应用程序时.我已成功重定向INFO消息,但此消息不断显示.任何想法将不胜感激.

qui*_*ine 10

更简单,你只需cd SPARK_HOME/conf然后mv log4j.properties.template log4j.properties再打开log4j.properties全部改变INFOERROR.这SPARK_HOME是spark安装的根目录.

有些人可能正在使用hdfs他们的Spark存储后端,并且会发现日志消息实际上是由生成的hdfs.要更改此设置,请转到该HADOOP_HOME/etc/hadoop/log4j.properties文件.只需hadoop.root.logger=INFO,console改为hadoop.root.logger=ERROR,console.HADOOP_HOME对我来说再次是你的hadoop安装的根源/usr/local/hadoop.

  • 我必须应用这些更改并将`log4j.properties`复制到`src/main/resources`文件夹,以便获取更改. (4认同)

Dan*_*rod 6

如果您将log4j.properties文件放在 themain/resources和 the下,test/resources也会发生这种情况。在这种情况下,从 中删除文件test/resources并仅使用来自 中的文件可以main/resources解决问题。


Sea*_*ull 5

好吧,所以我想出了一种方法来做到这一点。因此,基本上,我最初使用了自己的log4j.xml,因此我们看到了此属性。一旦有了自己的“ log4j.properties”文件,该消息就会消失。

  • 认为独立于本地/分布式log4j.properties需要存在于类路径中+您需要在其中定义一个根记录器,例如log4j.rootLogger = INFO,console。请参阅https://github.com/apache/spark/blob/5264164a67df498b73facae207eda12ee133be7d/core/src/main/scala/org/apache/spark/internal/Logging.scala以获得参考! (3认同)
  • 如果您使用 Intellij,这就是确切的解决方案。做得好。其他答案对我不起作用。 (2认同)