mirror of
https://github.com/taoensso/telemere.git
synced 2025-12-16 17:41:12 +00:00
[fix] [#18] Support {:uid :auto} for non-tracing signal creators
This commit is contained in:
parent
974df3e152
commit
f52a04b4dc
3 changed files with 7 additions and 2 deletions
|
|
@ -5,6 +5,7 @@ Signal options (shared by all signal creators):
|
|||
`:kind` -------- Signal ?kind ∈ #{nil :event :error :log :trace :spy <app-val> ...}
|
||||
`:id` ---------- ?id of signal (common to all signals created at callsite, contrast with `:uid`)
|
||||
`:uid` --------- ?id of signal instance (unique to each signal created at callsite, contrast with `:id`)
|
||||
Defaults to `:auto` for tracing signals, and nil otherwise
|
||||
|
||||
`:msg` --------- Arb app-level ?message to incl. in signal: str or vec of strs to join (with `\space`)
|
||||
`:data` -------- Arb app-level ?data to incl. in signal: usu. a map
|
||||
|
|
|
|||
|
|
@ -669,7 +669,7 @@
|
|||
(enc/cond!
|
||||
(not trace?) ; Don't trace
|
||||
`[~'__otel-context1 nil
|
||||
~'__uid ~uid-form ; Given or nil
|
||||
~'__uid ~(auto-> uid-form `(taoensso.telemere/*uid-fn* (if ~'__root0 false true)))
|
||||
~'__root1 ~'__root0 ; Retain, but don't establish
|
||||
~'__run-result
|
||||
~(when run-form
|
||||
|
|
|
|||
|
|
@ -427,7 +427,11 @@
|
|||
(let [sv (with-sig (sig! {:level :info, :parent {:id :id1, :foo :bar}}))] (is (sm? sv {:parent {:id :id1 :uid :submap/nx, :foo :bar}}) "Manual `:parent/id`"))
|
||||
(let [sv (with-sig (sig! {:level :info, :parent {:uid :uid1, :foo :bar}}))] (is (sm? sv {:parent {:id :submap/nx :uid :uid1, :foo :bar}}) "Manual `:parent/uid`"))
|
||||
(let [sv (with-sig (sig! {:level :info, :root {:id :id1, :foo :bar}}))] (is (sm? sv {:root {:id :id1 :uid :submap/nx, :foo :bar}}) "Manual `:root/id`"))
|
||||
(let [sv (with-sig (sig! {:level :info, :root {:uid :uid1, :foo :bar}}))] (is (sm? sv {:root {:id :submap/nx :uid :uid1, :foo :bar}}) "Manual `:root/uid`"))])
|
||||
(let [sv (with-sig (sig! {:level :info, :root {:uid :uid1, :foo :bar}}))] (is (sm? sv {:root {:id :submap/nx :uid :uid1, :foo :bar}}) "Manual `:root/uid`"))
|
||||
(let [sv (with-sig (sig! {:level :info})) ] (is (sm? sv {:uid nil})))
|
||||
(let [sv (with-sig (sig! {:level :info, :uid :auto})) ] (is (sm? sv {:uid (enc/pred string?)})))
|
||||
(let [sv (binding [tel/*uid-fn* (fn [_] "my-uid")]
|
||||
(with-sig (sig! {:level :info, :uid :auto}))) ] (is (sm? sv {:uid "my-uid"})))])
|
||||
|
||||
(testing "Auto parent/root"
|
||||
[(testing "Tracing disabled"
|
||||
|
|
|
|||
Loading…
Reference in a new issue