在Compojure应用程序中初始化日志记录的位置?

时间:2014-09-29 11:55:16

标签: logging clojure compojure ring luminus

我有一个使用Luminus生成的Compojure应用程序。我想使用clj-logging-config配置日志记录,但我对此非常挣扎。我将(!set-logger)命令放在init函数中(在{:ring {:init}中用project.clj声明),但我无法解释这种行为。

如果我只是说(!set-logger),那么它会记录内容。如果我说(set-logger! :pattern "%d - %m%n"),那就抱怨:

log4j:WARN No appenders could be found for logger (example.routes.home).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

设置日志级别似乎没有任何效果。

(!set-logger)移到不同模块的顶部似乎会导致这些模块按预期记录,但我找不到合适的位置来放置一个(!set-logger)所有我想要的参数并让它影响整个应用程序。

1 个答案:

答案 0 :(得分:0)

所以这似乎有效:

(set-loggers!
  :root {
    :level :debug
    :pattern "%d - [%p] %m%n"
  }
)

我的假设是set-logger!默认设置根记录器。我想那是不正确的?