Class QueryHealth

Namespace
Cratis.Arc.Queries
Assembly
Cratis.Arc.Core.dll

Read model for query health monitoring.

[ReadModel]
[Path("/.cratis/queries/health")]
public sealed record QueryHealth : IEquatable<QueryHealth>
Inheritance
QueryHealth
Implements
Inherited Members
Extension Methods

Constructors

QueryHealth()

public QueryHealth()

Properties

Connections

Gets the connection health information.

public required IEnumerable<QueryConnectionHealth> Connections { get; init; }

Property Value

IEnumerable<QueryConnectionHealth>

QuerySubscriptions

Gets a query-centric view of all active subscriptions, grouped by query name.

public IEnumerable<QuerySubscriptionAggregate> QuerySubscriptions { get; }

Property Value

IEnumerable<QuerySubscriptionAggregate>

Remarks

Each entry's QueryName matches the queryName property on the generated TypeScript proxy, enabling cross-stack correlation between frontend cache diagnostics and backend subscription state across all transport modes (multiplexed WebSocket and direct SSE).

TotalConnections

Gets the total number of active connections.

public int TotalConnections { get; }

Property Value

int

TotalSubscriptions

Gets the total number of active subscriptions across all connections.

public int TotalSubscriptions { get; }

Property Value

int

Methods

Equals(QueryHealth?)

public bool Equals(QueryHealth? other)

Parameters

other QueryHealth

Returns

bool

Equals(object?)

public override bool Equals(object? obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

ObserveHealth(IQueryHealthTracker)

Observes query health as a real-time stream.

public static ISubject<QueryHealth> ObserveHealth(IQueryHealthTracker healthTracker)

Parameters

healthTracker IQueryHealthTracker

The query health tracker service.

Returns

ISubject<QueryHealth>

Observable subject emitting query health snapshots.

ToString()

public override string ToString()

Returns

string

Operators

operator ==(QueryHealth?, QueryHealth?)

public static bool operator ==(QueryHealth? left, QueryHealth? right)

Parameters

left QueryHealth
right QueryHealth

Returns

bool

operator !=(QueryHealth?, QueryHealth?)

public static bool operator !=(QueryHealth? left, QueryHealth? right)

Parameters

left QueryHealth
right QueryHealth

Returns

bool