问题描述
项目中使用log4j将日志写入flume,用的是flume-ng-log4jappender
包。
由于项目是Spark项目,要将项目打包后,在集群中spark-submit提交。集群中已经有了log4j、slf4j、flume等相关包,所以相关依赖都没有打包进去,直接使用集群中的。
spark-submit后报如下错:
Failed to instantiate SLF4J LoggerFactory
Reported exception:
java.lang.NullPointerException
at org.slf4j.LoggerFactory.reportActualBinding(LoggerFactory.java:344)
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:152)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:124)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:412)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:357)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:383)
at org.apache.flume.api.AbstractRpcClient.<clinit>(AbstractRpcClient.java:31)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at org.apache.flume.api.RpcClientFactory.getInstance(RpcClientFactory.java:76)
at org.apache.flume.clients.log4jappender.LoadBalancingLog4jAppender.activateOptions(LoadBalancingLog4jAppender.java:125)
at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307)
at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:172)
at org.apache.log4j.config.PropertySetter.setProperties(Prope