From 0822217480db0e5bf2089de69de0547b721f35d0 Mon Sep 17 00:00:00 2001 From: Damiano Ruehl Date: Thu, 21 Nov 2024 23:58:06 +0100 Subject: [PATCH] [new] [#34] Add new `signal-preamble-fn` opts (@Knotschi) New opts: - `:format-id-fn` - `:format-msg-fn` This way its easier to reuse signal-preamble-fn for custom handlers. If nil is passed as any format fn: value won't be logged. The `-` char before the msg is now part of the formatter fn. --- projects/main/src/taoensso/telemere/utils.cljc | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/projects/main/src/taoensso/telemere/utils.cljc b/projects/main/src/taoensso/telemere/utils.cljc index cdf3d8c..1ec1aed 100644 --- a/projects/main/src/taoensso/telemere/utils.cljc +++ b/projects/main/src/taoensso/telemere/utils.cljc @@ -511,10 +511,14 @@ \"2024-03-26T11:14:51.806Z INFO EVENT Hostname taoensso.telemere(2,21) ::ev-id - msg\" Options: - `:format-inst-fn` - (fn format [instant]) => string." + `:format-inst-fn` - (fn format [instant]) => string. + `:format-id-fn` - (fn format [ns id]) => string. + `:format-msg-fn` - (fn format [msg]) => string." ([] (signal-preamble-fn nil)) - ([{:keys [format-inst-fn] - :or {format-inst-fn (format-inst-fn)}}] + ([{:keys [format-inst-fn format-id-fn format-msg-fn] + :or {format-inst-fn (format-inst-fn) + format-id-fn format-id + format-msg-fn (fn [msg] (str "- " msg))}}] (fn signal-preamble [signal] (let [{:keys [inst level kind ns id msg_]} signal @@ -536,8 +540,10 @@ (when-let [c (get signal :column)] (s+ "," c)) (s+ ")")))) - (when id (s+spc (sigs/format-id ns id))) - (when-let [msg (force msg_)] (s+spc "- " msg)) + (when id (when-let [ff format-id-fn] (s+spc (ff ns id)))) + (enc/when-let [ff format-msg-fn + msg (force msg_)] + (s+spc (ff msg))) (when-not (zero? (enc/sb-length sb)) (str sb))))))