如何在IntelliJ IDEA中设置Spark应用程序的日志记录级别?

时间:2015-08-11 20:53:10

标签: scala intellij-idea apache-spark

我正在使用通过SBT创建的IntelliJ中的Scala项目。该项目将Spark作为其依赖项之一。我还处于开发阶段,所以一切都在我的本地机器上运行。

如何更改日志级别等Spark配置?

6 个答案:

答案 0 :(得分:6)

如果您正在使用IDE进行本地开发,则可以在运行时更改日志级别:

  

LogManager.getRootLogger.setLevel(Level.ALL)

Ps:在代码中创建SparkContext / SQLContext后放置该行。

答案 1 :(得分:6)

在Eclipse上为我设置SparkContext的日志级别

spark.sparkContext.setLogLevel("WARN")  

答案 2 :(得分:1)

将log4j.properties文件放在标记为资源的目录下,spark将读取此log4j配置。

答案 3 :(得分:0)

For shutting down/setting log level programmatically in spark 2.0+

Logger.getLogger("org.apache.spark").setLevel(Level.OFF);

答案 4 :(得分:0)

我很想弄清楚如何使用项目本地属性文件来完成此操作(一个示例文件会很好),但是我可以使用以下代码在Spark 2.2中完成此操作:

import org.apache.log4j.{Level, Logger}

object MySparkApp {

    def main(args: Array[String]): Unit = {
      Logger.getLogger("org.apache.spark").setLevel(Level.WARN)

答案 5 :(得分:-1)

默认情况下,Spark会记录您希望在日志中看到的所有内容,但是,如果您需要更改日志记录行为,则可以编辑Apache Spark配置的conf目录中的log4j.properties。如果您使用的是预建版本,可以在/home/coco/Applications/spark-1.4.0-bin-hadoop2.6/conf目录中找到它。有一个模板文件" log4j.properties.template"您必须复制到" log4j.properties"并根据您的需要进行编辑。我希望它有所帮助。