spark 如何设置日志级别
1、Spark-core的日志配置文件:log4j-defaults.propertie

2、从上图可以看出Spark-core包设置默认的日志级别为info,所以会输出非常多的日志一般我们会针对全局或局部做不同的配置
3、局部应用设置:
针对SparkContext应用,Spark有专门的api设置日志级别,如下:
上述方法,只针对SparkContext相关的应用,而对Spark-streaming等应用无效果。

4、全局应用设置:针对spark所有应用,可以Java工程目录中新建/src/main/resources目录,把log4j.properties放置该目录

5、log4j.properties生成:
1. Spark中conf默认配置文件是log4j.properties.template,可以将其改名为log4j.properties;
2. 将Spark-core包中的log4j-default.properties内容复制到log4j.properties文件。
#log4j内容如下
# Set everything to be logged to the console
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
# Settings to quiet third party logs that are too verbose
log4j.logger.org.spark-project.jetty=WARN
log4j.logger.org.spark-project.jetty.util.component.AbstractLifeCycle=ERROR
log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=INFO
log4j.logger.org.apache.spark.repl.SparkILoop$SparkILoopInterpreter=INFO
log4j.logger.org.apache.parquet=ERROR
log4j.logger.parquet=ERROR
# SPARK-9183: Settings to avoid annoying messages when looking up nonexistent UDFs in SparkSQL with Hive support
log4j.logger.org.apache.hadoop.hive.metastore.RetryingHMSHandler=FATAL
log4j.logger.org.apache.hadoop.hive.ql.exec.FunctionRegistry=ERROR
6、在开发工程中,我们可以设置日志级别为WARN,即:
log4j.rootCategory=WARN, console
在生产环境可以配置成ERROR
log4j.rootCategory=ERROR