Interface ITelemetryService
- Namespace
- DotCompute.Abstractions.Interfaces.Telemetry
- Assembly
- DotCompute.Abstractions.dll
Core telemetry service interface for DotCompute observability integration.
public interface ITelemetryService
Methods
CreatePerformanceProfileAsync(string, ProfileOptions?, CancellationToken)
Creates a performance profile for detailed analysis.
Task<PerformanceProfile> CreatePerformanceProfileAsync(string correlationId, ProfileOptions? options = null, CancellationToken cancellationToken = default)
Parameters
correlationIdstringoptionsProfileOptionscancellationTokenCancellationToken
Returns
ExportTelemetryAsync(TelemetryExportFormat, CancellationToken)
Exports telemetry data to configured monitoring systems.
Task ExportTelemetryAsync(TelemetryExportFormat format = TelemetryExportFormat.Prometheus, CancellationToken cancellationToken = default)
Parameters
formatTelemetryExportFormatcancellationTokenCancellationToken
Returns
FinishDistributedTraceAsync(string, TraceStatus)
Finishes a distributed trace and returns analysis results.
Task<TraceData?> FinishDistributedTraceAsync(string correlationId, TraceStatus status = TraceStatus.Ok)
Parameters
correlationIdstringstatusTraceStatus
Returns
GetSystemHealth()
Gets current system health metrics.
SystemHealthMetrics GetSystemHealth()
Returns
RecordKernelExecution(string, string, TimeSpan, TelemetryKernelPerformanceMetrics, string?, Exception?)
Records a kernel execution event with performance metrics.
void RecordKernelExecution(string kernelName, string deviceId, TimeSpan executionTime, TelemetryKernelPerformanceMetrics metrics, string? correlationId = null, Exception? exception = null)
Parameters
kernelNamestringdeviceIdstringexecutionTimeTimeSpanmetricsTelemetryKernelPerformanceMetricscorrelationIdstringexceptionException
RecordMemoryOperation(string, string, long, TimeSpan, MemoryAccessMetrics, string?, Exception?)
Records a memory operation with transfer metrics.
void RecordMemoryOperation(string operationType, string deviceId, long bytes, TimeSpan duration, MemoryAccessMetrics metrics, string? correlationId = null, Exception? exception = null)
Parameters
operationTypestringdeviceIdstringbyteslongdurationTimeSpanmetricsMemoryAccessMetricscorrelationIdstringexceptionException
StartDistributedTrace(string, string?, Dictionary<string, object?>?)
Starts distributed tracing for cross-device operations.
TraceContext StartDistributedTrace(string operationName, string? correlationId = null, Dictionary<string, object?>? tags = null)
Parameters
operationNamestringcorrelationIdstringtagsDictionary<string, object>