欢迎!请查看关于页面了解有关如何使用本站的一些更多信息。
评论者:llsouder
用0.4.0版本重新测试
user=> (log/info ["test" "1" "" "3"]) Jul 23, 2017 8:22:56 AM user invoke INFO: [test 1 3] user=> (log/info ":one" :one 1 "1") Jul 23, 2017 8:35:30 AM user invoke INFO: :one :one 1 1
输出应该是
INFO: ["test" "1" "" "3"]
和
INFO: [":one" :one 1 "1"]
将print-str替换为prn-str,以便用户可以看到将要评估的内容。这在调试程序时很有用,但我可以理解这可能会妨碍野外可读信息输出。
评论者:tangrammer
大家好,在我的应用程序代码中,我可以通过为String类型添加覆盖的print方法来避免这个令人烦恼的问题……这是一种方便的方法吗?
`(defmethod clojure.core/print-method String
`
[s ^java.io.Writer writer]
(.write writer (str "\"" s "\""))) `
评论者:ilmoraunio
附上的修补方案是针对TLOG20.patch的替代方案,我们在这里使用pr-str。这个更改集允许将已编入日志的Clojure代码粘贴到REPL(例如)中时兼容编译器。此更改集影响logp及其派生工具的使用。
此修补方案对于在生产上进行更轻松的调试是必要的,特别是在Clojure数据实体太大而无法手动插入引号时。
评论者:clojure32647908
https://github.com/clojure/tools.logging/pull/11#issuecomment-388584804
https://github.com/xingzhefeng/tools.logging