[nop] Misc housekeeping

This commit is contained in:
Peter Taoussanis 2024-08-21 23:53:15 +02:00
parent 58b3af893c
commit 331bea7a51
3 changed files with 15 additions and 23 deletions

View file

@ -3,6 +3,7 @@
Signal design shared by: Telemere, Tufte, Timbre." Signal design shared by: Telemere, Tufte, Timbre."
(:refer-clojure :exclude [binding]) (:refer-clojure :exclude [binding])
(:require (:require
[clojure.set :as set]
[taoensso.encore :as enc :refer [binding have have?]] [taoensso.encore :as enc :refer [binding have have?]]
[taoensso.encore.signals :as sigs]) [taoensso.encore.signals :as sigs])
@ -192,9 +193,10 @@
(do (enc/def-print-impl [sig Signal] (str "#" `Signal (pr-str (into {} sig))))) (do (enc/def-print-impl [sig Signal] (str "#" `Signal (pr-str (into {} sig)))))
#?(:clj (enc/def-print-dup [sig Signal] (str "#" `Signal (pr-str (into {} sig))))) ; NB intentionally verbose, to support extra keys #?(:clj (enc/def-print-dup [sig Signal] (str "#" `Signal (pr-str (into {} sig))))) ; NB intentionally verbose, to support extra keys
(def impl-signal-keys #{:_otel-context})
(def standard-signal-keys (def standard-signal-keys
(disj (set (keys (map->Signal {:schema 0}))) (set/difference (set (keys (map->Signal {:schema 0})))
:_otel-context)) impl-signal-keys))
(comment (comment
(def s1 (with-signal (signal! {:level :info, :my-k1 :my-v1}))) (def s1 (with-signal (signal! {:level :info, :my-k1 :my-v1})))

View file

@ -14,7 +14,7 @@
[io.opentelemetry.context Context] [io.opentelemetry.context Context]
[io.opentelemetry.api.common AttributesBuilder Attributes] [io.opentelemetry.api.common AttributesBuilder Attributes]
[io.opentelemetry.api.logs LoggerProvider Severity] [io.opentelemetry.api.logs LoggerProvider Severity]
[io.opentelemetry.api.trace TracerProvider Tracer Span] [io.opentelemetry.api.trace TracerProvider Tracer Span SpanContext]
[java.util.concurrent CountDownLatch])) [java.util.concurrent CountDownLatch]))
(comment (comment
@ -139,13 +139,12 @@
;;;; Spans ;;;; Spans
#_
(defn- remote-span-context (defn- remote-span-context
"Returns new remote `io.opentelemetry.api.trace.SpanContext` "Returns new remote `io.opentelemetry.api.trace.SpanContext`
for use as `start-span` parent." for use as `start-span` parent."
^io.opentelemetry.api.trace.SpanContext ^SpanContext [^String trace-id ^String span-id sampled? ?trace-state]
[^String trace-id ^String span-id sampled? ?trace-state] (SpanContext/createFromRemoteParent trace-id span-id
(io.opentelemetry.api.trace.SpanContext/createFromRemoteParent
trace-id span-id
(if sampled? (if sampled?
(io.opentelemetry.api.trace.TraceFlags/getSampled) (io.opentelemetry.api.trace.TraceFlags/getSampled)
(io.opentelemetry.api.trace.TraceFlags/getDefault)) (io.opentelemetry.api.trace.TraceFlags/getDefault))
@ -175,15 +174,8 @@
(enc/if-not [parent ?parent] (enc/if-not [parent ?parent]
(.setParent sb context) ; Base (callsite) context (.setParent sb context) ; Base (callsite) context
(cond (cond
;; Local parent span, etc. (instance? Span parent) (.setParent sb (.with context ^Span parent)) ; Local parent span, etc.
(instance? Span parent) (.setParent sb (.with context ^Span parent)) (instance? SpanContext parent) (.setParent sb (.with context (Span/wrap ^SpanContext parent))) ; Remote parent context, etc.
;; Remote parent context, etc.
(instance? io.opentelemetry.api.trace.SpanContext parent)
(.setParent sb
(.with context
(Span/wrap ^io.opentelemetry.api.trace.SpanContext parent)))
:else :else
(enc/unexpected-arg! parent (enc/unexpected-arg! parent
{:context `start-span {:context `start-span
@ -222,13 +214,8 @@
(comment (enc/qb 1e6 (span-attrs "uid1" {:ns "ns1" :line 495}))) ; 101.36 (comment (enc/qb 1e6 (span-attrs "uid1" {:ns "ns1" :line 495}))) ; 101.36
(def ^:private ^String span-name (def ^:private ^String span-name (enc/fmemoize (fn [id] (if id (enc/as-qname id) "telemere/nil-id"))))
(enc/fmemoize (comment (enc/qb 1e6 (span-name :foo/bar))) ; 46.09
(fn [id]
#_(if id (str id) ":telemere/nil-id")
(if id (enc/as-qname id) "telemere/nil-id"))))
(comment (enc/qb 1e6 (span-name :foo/bar))) ; 46.09
(defn- handle-tracing! (defn- handle-tracing!
"Experimental! Takes care of relevant signal `Span` management. "Experimental! Takes care of relevant signal `Span` management.

View file

@ -700,6 +700,9 @@
:file (if incl-file? (assoc!* m k v) m) :file (if incl-file? (assoc!* m k v) m)
:thread (if incl-thread? (assoc!* m k v) m) :thread (if incl-thread? (assoc!* m k v) m)
(clojure.core/into ()
taoensso.telemere.impl/impl-signal-keys) m ; noop
(clojure.core/into () (clojure.core/into ()
(clojure.core/disj (clojure.core/disj
taoensso.telemere.impl/standard-signal-keys taoensso.telemere.impl/standard-signal-keys