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

NameSignatureSynopsis
IncludePayloadsTelemetry.IncludePayloadsProcess-wide switch for including rendered message *payloads* in diagnostics.
TraceparentMetadataKeyTelemetry.TraceparentMetadataKeyMetadata key carrying the W3C traceparent.
QueryActivitySourceNameTelemetry.QueryActivitySourceNameRead-side projection of journal events.
AllActivitySourcesTelemetry.AllActivitySourcesEvery FCQRS source, for one-call registration.
FatalFlushTelemetry.FatalFlushOptional hook invoked right before FCQRS kills the process on a fatal error.
MessageFlowCategoryTelemetry.MessageFlowCategoryLogger 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.
MessageFlowLoggingTelemetry.MessageFlowLoggingProcess-wide switch for the message-flow narrative logs.
ActivitySourceNameTelemetry.ActivitySourceNameCommands and events flowing through aggregates.
SagaActivitySourceNameTelemetry.SagaActivitySourceNameSaga state transitions.

IncludePayloads

Telemetry.IncludePayloads
Member
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

TraceparentMetadataKey

Telemetry.TraceparentMetadataKey
Member
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

QueryActivitySourceName

Telemetry.QueryActivitySourceName
Member
Read-side projection of journal events.

Returns

string

AllActivitySources

Telemetry.AllActivitySources
Member
Every FCQRS source, for one-call registration.

Returns

string[]

FatalFlush

Telemetry.FatalFlush
Member
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

MessageFlowCategory

Telemetry.MessageFlowCategory
Member
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

MessageFlowLogging

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

Returns

bool

ActivitySourceName

Telemetry.ActivitySourceName
Member
Commands and events flowing through aggregates.

Returns

string

SagaActivitySourceName

Telemetry.SagaActivitySourceName
Member
Saga state transitions.

Returns

string