在Spark 2应用程序中使用Log4J2创建自定义日志

时间:2018-08-17 02:37:54

标签: apache-spark log4j2

我正在使用Spark 2版本。

我的spark提交应用程序将Log4J2 jars阴影化为构建的一部分。 log4j.xml放在资源文件夹中。

我可以在新文件中创建使用Log4J 2 API创建的日志吗?

我需要做什么才能使其正常工作?

1 个答案:

答案 0 :(得分:0)

在资源文件夹中创建log4j.properties。

log4j.properties的文件内容

log4j.appender.RollingAppenderU=org.apache.log4j.RollingFileAppender
log4j.appender.RollingAppenderU.File=/Give path for cutosm log file/sparkU.log
log4j.appender.RollingAppenderU.MaxFileSize=20MB
log4j.appender.RollingAppenderU.MaxBackupIndex=2
log4j.appender.RollingAppenderU.layout=org.apache.log4j.PatternLayout
log4j.appender.RollingAppenderU.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n


# My custom logging goes to another file
log4j.logger.myLogger=INFO,RollingAppenderU

# The noisier spark logs go to file only
log4j.logger.spark.storage=INFO, RollingAppenderU
log4j.additivity.spark.storage=false
log4j.logger.spark.scheduler=INFO, RollingAppenderU
log4j.additivity.spark.scheduler=false
log4j.logger.spark.CacheTracker=INFO, RollingAppenderU
log4j.additivity.spark.CacheTracker=false
log4j.logger.spark.CacheTrackerActor=INFO, RollingAppenderU
log4j.additivity.spark.CacheTrackerActor=false
log4j.logger.spark.MapOutputTrackerActor=INFO, RollingAppenderU
log4j.additivity.spark.MapOutputTrackerActor=false
log4j.logger.spark.MapOutputTracker=INFO, RollingAppenderU

您可以使用预构建spark随附的提供的log4j库

代码段为:-

 import org.apache.log4j.Logger

 object customLogGenerataor {
   def main(args: Array[String]): Unit = {

    val  logger:Logger  = Logger.getLogger("myLogger")
    logger.info("Read data..........!!!")
  }
}