using FrameworkDAL.DTO.DiagnosticsCenter; using FrameworkDAL.DTO.DiagnosticsSession; using GB5Shared.DTO.Framework.Login; namespace FrameworkDAL.CustomCode.DiagnosticsCenter; public interface IDiagnosticsCenterDAL { // Queries TOBSERVABILITY via system connection (cross-tenant telemetry store) Task GetHealthDashboardAsync(int tenantId, CancellationToken ct); Task> GetSlowTransactionsAsync(int tenantId, int topN, int hoursBack, CancellationToken ct); Task> GetRecentErrorsAsync(int tenantId, int topN, int hoursBack, CancellationToken ct); Task> GetModuleHealthAsync(int tenantId, int hoursBack, CancellationToken ct); // Queries TEVENTLOG via IQueryExecutor (per-tenant routing) Task> GetWorkflowDiagnosticsAsync(int topN, int hoursBack, LoginDTO login, CancellationToken ct); Task> GetIntegrationDiagnosticsAsync(int topN, int hoursBack, LoginDTO login, CancellationToken ct); // Queries TDIAGNOSTIC_SESSION via IQueryExecutor (per-tenant) Task> GetSessionDiagnosticsAsync(int tenantId, LoginDTO login, CancellationToken ct); }