mirror of
https://github.com/taoensso/telemere.git
synced 2026-01-20 05:49:02 +00:00
[nop] Misc housekeeping
This commit is contained in:
parent
58b3af893c
commit
331bea7a51
3 changed files with 15 additions and 23 deletions
|
|
@ -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})))
|
||||||
|
|
|
||||||
|
|
@ -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.
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue