TelemetryType
PackageFCQRS
FCQRS's ActivitySource names — register them with your tracing pipeline
(e.g. OpenTelemetry: tracing.AddSource(Telemetry.AllActivitySources)).
Specification
Kind
Type
Members
9
Examples
0
IncludePayloadsSignature
Telemetry.IncludePayloads
TraceparentMetadataKeySignature
Telemetry.TraceparentMetadataKey
QueryActivitySourceNameSignature
Telemetry.QueryActivitySourceName
AllActivitySourcesSignature
Telemetry.AllActivitySources
FatalFlushSignature
Telemetry.FatalFlush
Summary
| Name | Signature | Synopsis |
|---|---|---|
| IncludePayloads | Telemetry.IncludePayloads | Process-wide switch for including rendered message *payloads* in diagnostics. |
| TraceparentMetadataKey | Telemetry.TraceparentMetadataKey | Metadata key carrying the W3C traceparent. |
| QueryActivitySourceName | Telemetry.QueryActivitySourceName | Read-side projection of journal events. |
| AllActivitySources | Telemetry.AllActivitySources | Every FCQRS source, for one-call registration. |
| FatalFlush | Telemetry.FatalFlush | Optional hook invoked right before FCQRS kills the process on a fatal error. |
| MessageFlowCategory | Telemetry.MessageFlowCategory | 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. |
| MessageFlowLogging | Telemetry.MessageFlowLogging | Process-wide switch for the message-flow narrative logs. |
| ActivitySourceName | Telemetry.ActivitySourceName | Commands and events flowing through aggregates. |
| SagaActivitySourceName | Telemetry.SagaActivitySourceName | Saga state transitions. |
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.
Returns
bool
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
Read-side projection of journal events.
Returns
string
Every FCQRS source, for one-call registration.
Returns
string[]
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.
Returns
Action
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
Process-wide switch for the message-flow narrative logs. Default: on.
Returns
bool
Commands and events flowing through aggregates.
Returns
string