elsa-core/specs/006-diagnostics-console-logs/contracts/signalr-hub.md
Sipke Schoorstra 43108c2e48
Add diagnostics console logs (#7462)
* feat: add diagnostics console logs

* test: avoid secret-like redaction fixtures

* fix: address console logs review feedback

* fix: harden console log capture lifecycle

* fix: report console log drop summaries

* fix: address diagnostics review cleanups
2026-05-18 02:16:46 +02:00

1.4 KiB

SignalR Hub Contract: Diagnostics Console Logs

Hub Route

/elsa/hubs/diagnostics/console-logs

Requires an authenticated user authorized for read:diagnostics:console-logs.

Client-to-Server Methods

SubscribeAsync

Task SubscribeAsync(ConsoleLogFilter filter);

Creates or replaces the caller's live console-log subscription.

UpdateFilterAsync

Task UpdateFilterAsync(ConsoleLogFilter filter);

Replaces the caller's active filter without reconnecting.

UnsubscribeAsync

Task UnsubscribeAsync();

Stops the caller's active subscription and releases its resources.

Server-to-Client Methods

ReceiveConsoleLogLineAsync

Payload is ConsoleLogLine.

Task ReceiveConsoleLogLineAsync(ConsoleLogLine line);

ReceiveDroppedLinesAsync

Payload is ConsoleLogDroppedSummary.

Task ReceiveDroppedLinesAsync(ConsoleLogDroppedSummary summary);

ReceiveSourceChangedAsync

Payload is ConsoleLogSource.

Task ReceiveSourceChangedAsync(ConsoleLogSource source);

Backpressure

Subscriber queues remain bounded. When a subscriber cannot keep up, the provider drops live lines for that subscriber and sends a dropped-line summary when possible.

Filtering

Live subscriptions support source ID, stream, free-text query, time range, and server-clamped limits where applicable. Filter updates take effect without requiring reconnect.