taoensso.telemere.open-telemetry
check-interop
clj
(check-interop)
Returns interop debug info map.
handler:open-telemetry
clj
(handler:open-telemetry)
(handler:open-telemetry {:keys [emit-tracing? logger-provider], :or {emit-tracing? true}})
Highly experimental, possibly buggy, and subject to change!!
Feedback and bug reports very welcome! Please ping me (Peter) at:
<https://www.taoensso.com/telemere> or
<https://www.taoensso.com/telemere/slack>
Needs `opentelemetry-java`,
Ref. <https://github.com/open-telemetry/opentelemetry-java>.
Returns a signal handler that:
- Takes a Telemere signal (map).
- Emits signal data to configured `LogExporter`
- Emits tracing data to configured `SpanExporter`
iff `telemere/otel-tracing?` is true.
Options:
`:logger-provider` - nil or `io.opentelemetry.api.logs.LoggerProvider`,
(see `telemere/otel-default-providers_` for default).
Optional signal keys:
`:otel/attrs` - Attributes [1] to add to log records AND tracing spans/events
`:otel/log-attrs` - Attributes [1] to add to log records ONLY
`:otel/trace-attrs` - Attributes [1] to add to tracing spans/events ONLY
[1] `io.opentelemetry.api.common.Attributes` or Clojure map with str/kw keys and vals ∈
#{nil boolean keyword string UUID long double string-vec long-vec double-vec boolean-vec}.
Other val types (incl. maps) will be printed as EDN if possible, or skipped otherwise.