Custom log4j appender in spark executor

前端 未结 3 890
死守一世寂寞
死守一世寂寞 2021-01-02 18:23

I\'m trying to use custom log4j appender inside spark executor, in order to forward all logs to Apache Kafka.

The problem is, log4j is initialized before fatjar\'s c

3条回答
  •  一个人的身影
    2021-01-02 18:50

    Ended up submitting extra jar with logging deps and loading it before user classpath.

    LOG_JAR="${THISDIR}/../lib/logging.jar"
    spark-submit ...... \
      --files "${LOG4J_CONF},${LOG_JAR}" \
      --conf "spark.driver.extraJavaOptions=-Dlog4j.configuration=`basename ${LOG4J_CONF}`" \
      --conf "spark.driver.extraClassPath=`basename ${LOG_JAR}`" \
      --conf "spark.executor.extraJavaOptions=-Dlog4j.configuration=`basename ${LOG4J_CONF}`" \
      --conf "spark.executor.extraClassPath=`basename ${LOG_JAR}`" \
      ...
    

    https://issues.apache.org/jira/browse/SPARK-10881?filter=-2

提交回复
热议问题