我正在为Grizzled-SLF4J
/ SLF4J
/ Spark
项目使用Scala
(SBT
的包装)。属性文件simplelogger.properties
已放置在src/main/resources
中。但是,当我使用property file
运行应用程序时,未检测到spark-submit
。无论我对property file
所做的更改都没有得到反映,似乎使用了属性的某些default
值(在我的情况下,只显示WARN
/ ERROR
条消息) 。
这是我的 build.sbt
lazy val root = (project in file(".")).
settings(
name := "myprojectname",
...,
libraryDependencies ++= Seq(
"org.clapper" %% "grizzled-slf4j" % "1.3.0",
"org.slf4j" % "slf4j-simple" % "1.7.22",
"org.slf4j" % "slf4j-api" % "1.7.22",
)
)
simplelogger.properties
org.slf4j.simpleLogger.logFile = System.err
org.slf4j.simpleLogger.defaultLogLevel = debug
org.slf4j.simpleLogger.showDateTime = false
org.slf4j.simpleLogger.dateTimeFormat = yyyy'/'MM'/'dd' 'HH':'mm':'ss'-'S
org.slf4j.simpleLogger.showThreadName = true
org.slf4j.simpleLogger.showLogName = true
org.slf4j.simpleLogger.showShortLogName= false
org.slf4j.simpleLogger.levelInBrackets = true
我在这里错过了什么吗?
PS:我确实检查了根目录中的Jar
和simplelogger.properties
答案 0 :(得分:0)
不是将其添加到根目录,而是将其添加到resources
代码文件夹旁边的scala
下:
/
src
main
resources
simplelogger.properties
scala
显然,这不仅对simplelogger.properties
有效,而且对您在运行时在类路径中所需的任何其他类型的文件都有效。
答案 1 :(得分:0)
在尝试使用 System.setProperty(org.slf4j.simpleLogger.defaultLogLevel,"DEBUG");
手动设置属性之前,我遇到了同样的困难
我注意到这些属性不存在于 slf4j-simple-1.6.1.jar
确保至少获得 slf4j-simple-1.7.25.jar
。之前的版本不支持属性
org.slf4j.simpleLogger.logFile
或
<块引用>org.slf4j.simpleLogger.defaultLogLevel
升级到 1.7.25 从 simplelogger.properties 获取简单的记录器配置