Spark未加载logback.xml

时间:2018-07-10 15:11:45

标签: scala apache-spark

我每次记录由Spark AccumulatorV2.产生的指标时都有一个Spark作业 我用这样的文件附加程序定义了logback.xml

<configuration debug="true">

    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>/tmp/testLog.file </file>
        <append>true</append>
        <encoder>
            <pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
        </encoder>
    </appender>

    <logger name="myMetrics">
        <appender-ref ref="FILE" />
    </logger>

</configuration>

然后在一个类中记录我的指标,我有:

val metricsLogger = LoggerFactory.getLogger("myMetrics")

但是,当我运行我的工作时,没有创建文件/tmp/testLog.file。我怀疑自己的logback.xml被驱逐了,因为我在开始工作时看到以下消息:

Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties

我已经为sl4j添加了阴影规则,但是我无法在正确的位置获取指标。我需要强制Spark使用我的logback.xml吗?

build.sbt

libraryDependencies ++= Seq(
  "org.apache.spark" %% "spark-core" % sparkV % "provided",
  "org.apache.spark" %% "spark-sql" % sparkV % "provided"
)

libraryDependencies += "ch.qos.logback" % "logback-classic" % "1.2.3"

assemblyShadeRules in assembly := Seq(
  ShadeRule.rename("org.slf4j.**" -> "shaded.@1").inAll
)

0 个答案:

没有答案