Skip to content

AgentPrismDiagnosticsCollector

Namespace AgentPrism · Assembly AgentPrism.Core.dll

Collects the installation’s self-diagnostic summary report.

public sealed class AgentPrismDiagnosticsCollector

objectAgentPrismDiagnosticsCollector

object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Has no side effects. It makes no model calls: model provider status is read from ModelProviderHealthCache without triggering a new health check. When SQL persistence is registered, it performs a light connectivity probe through ISqlPersistenceDiagnostics.GetSnapshotAsync; it does not apply migrations.

The generated AgentPrismDiagnosticsReport contains no secret.

AgentPrismDiagnosticsCollector(IEnumerable<IModelProvider>, ModelProviderHealthCache, IEnumerable<ISqlPersistenceDiagnostics>, IEnumerable<SqlPersistenceRegistrationMarker>, IAgentCatalog, IToolRegistry, ModelProviderCircuitBreaker?, ILogger<AgentPrismDiagnosticsCollector>?)

Section titled “ AgentPrismDiagnosticsCollector(IEnumerable<IModelProvider>, ModelProviderHealthCache, IEnumerable<ISqlPersistenceDiagnostics>, IEnumerable<SqlPersistenceRegistrationMarker>, IAgentCatalog, IToolRegistry, ModelProviderCircuitBreaker?, ILogger<AgentPrismDiagnosticsCollector>?)”

Initializes a diagnostics collector.

public AgentPrismDiagnosticsCollector(IEnumerable<IModelProvider> providers, ModelProviderHealthCache healthCache, IEnumerable<ISqlPersistenceDiagnostics> sqlDiagnostics, IEnumerable<SqlPersistenceRegistrationMarker> sqlMarkers, IAgentCatalog agentCatalog, IToolRegistry toolRegistry, ModelProviderCircuitBreaker? circuitBreaker = null, ILogger<AgentPrismDiagnosticsCollector>? logger = null)

providers IEnumerable<IModelProvider>

The registered model providers.

healthCache ModelProviderHealthCache

The model provider health cache.

sqlDiagnostics IEnumerable<ISqlPersistenceDiagnostics>

The active SQL provider diagnostics contract, with zero or one instance.

sqlMarkers IEnumerable<SqlPersistenceRegistrationMarker>

The registered SQL provider markers, counted to detect more than one active provider.

agentCatalog IAgentCatalog

The agent catalog.

toolRegistry IToolRegistry

The tool registry.

circuitBreaker ModelProviderCircuitBreaker?

The circuit breaker. No circuit is open when it is not registered.

logger ILogger<AgentPrismDiagnosticsCollector>?

The logger. When absent, a catalog read failure is ignored and the report leaves AgentPrismDiagnosticsReport.AgentCount empty.

ArgumentNullException

A required dependency is null.

Collects the installation diagnostics report.

public ValueTask<AgentPrismDiagnosticsReport> CollectAsync(CancellationToken cancellationToken = default)

cancellationToken CancellationToken

The cancellation token.

ValueTask<AgentPrismDiagnosticsReport>

The report. AgentPrismDiagnosticsReport.UiEmbedded always returns false because the field belongs to the AgentPrism.AspNetCore layer, which AgentPrism.Core does not know. The caller must set it with a with expression.