Header menu logo FCQRS

Telemetry Type

FCQRS's ActivitySource names — register them with your tracing pipeline (e.g. OpenTelemetry: tracing.AddSource(Telemetry.AllActivitySources)).

Static members

Static member Description

Telemetry.ActivitySourceName

Full Usage: Telemetry.ActivitySourceName

Returns: string

Commands and events flowing through aggregates.

Returns: string

Telemetry.AllActivitySources

Full Usage: Telemetry.AllActivitySources

Returns: string[]

Every FCQRS source, for one-call registration.

Returns: string[]

Telemetry.FatalFlush

Full Usage: Telemetry.FatalFlush

 Optional hook invoked right before FCQRS kills the process on a fatal
 error. FailFast skips finalizers and ProcessExit handlers, so without
 this everything still sitting in a batch exporter or buffered log sink
 is silently dropped — including the span and log entry of the fatal
 flow itself (every fatal site logs before invoking this hook). Flush
 your whole pipeline here, e.g.
   Telemetry.FatalFlush <- Action(fun () ->
       tracerProvider.ForceFlush(3000) |> ignore
       loggerProvider.ForceFlush(3000) |> ignore) // or Serilog's Log.CloseAndFlush()
 It runs on a background thread with a 5-second cap so a hung exporter
 cannot block the kill.

Telemetry.IncludePayloads

Full Usage: Telemetry.IncludePayloads

Process-wide switch for including rendered message *payloads* in diagnostics. Default: on. Span *names* are always low-cardinality case names (e.g. "Command:Register") regardless of this switch — payload values never appear there, so per-operation tracing rules and trace-viewer grouping always work, and nothing sensitive leaks into the indexed span name. This switch governs the *detail*: the payload rendered into span tags (command.type / event.type) and into the message-flow log lines. Turn it off (Telemetry.IncludePayloads <- false, or FcqrsBuilder.WithPayloadDiagnostics(false)) for sensitive domains — tags and log lines then carry the case name only, matching the span name.

Telemetry.MessageFlowCategory

Full Usage: Telemetry.MessageFlowCategory

Returns: string

Logger category of the out-of-box message-flow narrative: which command reached which aggregate and what it yielded, saga state transitions, the commands sagas issue, and the events they pick up. Written at Information level — these lines describe the application's messages, not FCQRS internals, so they are ON by default. Silence them with Telemetry.MessageFlowLogging <- false (or FcqrsBuilder.WithMessageFlowLogging(false)), or filter this category in your logging configuration.

Returns: string

Telemetry.MessageFlowLogging

Full Usage: Telemetry.MessageFlowLogging

Process-wide switch for the message-flow narrative logs. Default: on.

Telemetry.QueryActivitySourceName

Full Usage: Telemetry.QueryActivitySourceName

Returns: string

Read-side projection of journal events.

Returns: string

Telemetry.SagaActivitySourceName

Full Usage: Telemetry.SagaActivitySourceName

Returns: string

Saga state transitions.

Returns: string

Telemetry.TraceparentMetadataKey

Full Usage: Telemetry.TraceparentMetadataKey

Returns: string

Metadata key carrying the W3C traceparent. Stamped automatically on commands created while an Activity is current; flows command -> events -> saga -> the saga's commands through the existing Metadata plumbing, so the CID stays a plain correlation id and tracing rides beside it.

Returns: string

Type something to start searching.