Non-intrusive event taps, interceptors, and telemetry sink routing for fx effect pipelines.
Non-intrusive event taps, interceptors, and telemetry sink routing for fx effect pipelines.
(emit-telemetry! context-or-sinks event)Dispatches a telemetry-event map to all registered sinks in context-or-sinks.
Dispatches a `telemetry-event` map to all registered sinks in `context-or-sinks`.
(tap-telemetry-event> event-type)(tap-telemetry-event> event-type-or-prev data-or-type)(tap-telemetry-event> prev-effect event-type data)Emits a custom one-shot telemetry event map to registered telemetry sinks in context.
Example: (-> (fx/succeed> {:status :ready}) (fx.observability.telemetry/tap-telemetry-event> :service/ready {:details "Initialized"}))
Emits a custom one-shot telemetry event map to registered telemetry sinks in context.
Example:
(-> (fx/succeed> {:status :ready})
(fx.observability.telemetry/tap-telemetry-event> :service/ready {:details "Initialized"}))(tap-telemetry> event-type eff)(tap-telemetry> event-type-or-prev eff-or-type meta-or-eff)(tap-telemetry> prev-effect event-type eff meta-data)Observes execution of effect, emitting structured telemetry events with timing
and outcome status to registered sinks without altering values or failure channels.
Example: (fx.observability.telemetry/tap-telemetry> :http/request {:route "/items"} (fetch-items>))
Observes execution of `effect`, emitting structured telemetry events with timing
and outcome status to registered sinks without altering values or failure channels.
Example:
(fx.observability.telemetry/tap-telemetry> :http/request {:route "/items"} (fetch-items>))(telemetry-sink-layer> sink-fn)(telemetry-sink-layer> sink-fn & more-sinks)Creates a Layer providing :fx.observability/telemetry-sinks.
Creates a Layer providing `:fx.observability/telemetry-sinks`.
(with-telemetry-sink> sink-fn-or-eff eff-or-sink-fn)(with-telemetry-sink> prev-effect sink-fn target-eff)Registers a telemetry sink-fn (fn [event-map] ...) scoped to effect.
Example: (fx.observability.telemetry/with-telemetry-sink> (fn [e] (prn e)) (work>))
Registers a telemetry `sink-fn` `(fn [event-map] ...)` scoped to `effect`. Example: (fx.observability.telemetry/with-telemetry-sink> (fn [e] (prn e)) (work>))
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |