我正在寻找log4-clj-layout,以使Java日志记录变得混乱。我想用自己的格式功能玩一些,但是我无法使其正常工作。
按照上一页的说明,我开始将以下内容添加到我的log4j.properties
文件中:
log4j.appender.console.layout=log4_clj_layout.layout.Layout
log4j.appender.console.layout.FormatFn=json-format
效果很好。然后,我添加了一个函数log-test.core/my-format
并尝试将其用于日志记录:
log4j.appender.console.layout=log4_clj_layout.layout.Layout
log4j.appender.console.layout.FormatFn=log-test.core/my-format
但是现在我得到的只是启动时的错误:
(log/warn "foo")
Setting format-fn: log-est.core/my-format
log4j:WARN Failed to set property [formatFn] to value "log-test.core/my-format".
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
...
很明显我想念什么,但是呢?
我这样定义了格式函数(l
是log4-clj-layout.layout
的别名):
(defn my-format [event]
(pr event)
(l/json-format event))
我们将不胜感激。