沉默光滑的伐木

时间:2016-12-22 17:58:13

标签: scala logging slick slick-3.0

当我运行我们的测试套件时,slick决定登录调试级别,这使得很难看到我们的测试输出并导致套件花费更长时间。我无法弄清楚如何让它沉默。我已经尝试过如slick手册中建议的那样使用slf4j-nop,但似乎我们的项目使用了其他几个记录器并且光滑正在使用其中一个。这是我们项目定义的相关部分:

  libraryDependencies ++= Seq(
    "org.apache.spark" %% "spark-mllib" % SparkVersion,
    "org.postgresql" % "postgresql" % "9.3-1101-jdbc41",
    "com.typesafe.slick" %% "slick" % "3.1.1",
    "com.typesafe.slick" %% "slick-hikaricp" % "3.1.1",
    "com.typesafe.slick" %% "slick-codegen" % "3.1.1"
  ),
  dependencyOverrides ++= Set(
    "org.slf4j" % "slf4j-api" % Slf4jVersion,
    "org.slf4j" % "jcl-over-slf4j" % Slf4jVersion,
    "org.slf4j" % "jul-to-slf4j" % Slf4jVersion
  ),
  dependencyOverrides in test := Set(
    "org.slf4j" % "slf4j-nop" % "1.6.4"), //no-op logger for slick

我已经尝试过的一些事情,其中​​没有一项有效:

  • Turn Slick logging off
  • 中的建议将logback.xml添加到测试资源
  • 使用logging.properties
  • 添加commons-logging.properties.level=WARN来测试资源
  • logger.scala.slick=WARN
  • 中添加application.conf

2 个答案:

答案 0 :(得分:0)

只需将此行添加到logback.xml

即可

<logger name="slick" level="WARN" />

答案 1 :(得分:0)

Slick正在使用Log4j进行日志记录。奇怪的是,只需在项目中添加一个空的src/test/resources/log4j.properties文件,就可以在测试运行期间将其静音。