observability-analyzer
Version:
Production-ready MCP Server for intelligent Loki/Tempo observability dashboard analysis and generation
68 lines • 1.9 kB
TypeScript
export interface REDMethodQueries {
requestRate: string[];
errorRate: string[];
duration: string[];
}
export interface REDMethodFeasibility {
rate: 'high' | 'medium' | 'low';
errors: 'high' | 'medium' | 'low';
duration: 'high' | 'medium' | 'low';
score: number;
}
export interface ServiceOverlap {
lokiServices: string[];
correlationPotential: number;
}
export interface LogStructure {
hasStructuredLogs: boolean;
hasServiceLabels: boolean;
hasErrorLevels: boolean;
hasDurationFields: boolean;
detectedFormats: Array<'json' | 'logfmt' | 'unstructured'>;
commonFields: string[];
}
export interface DataStructureAnalysis {
redMethodFeasibility: REDMethodFeasibility;
serviceOverlap: ServiceOverlap;
logStructure: LogStructure;
correlationOpportunities: CorrelationOpportunity[];
feasibilityScore: number;
}
export interface CorrelationOpportunity {
type: 'time-based' | 'service-based' | 'error-pattern';
confidence: number;
description: string;
services: string[];
exampleQueries: {
loki: string;
};
}
export interface REDQuery {
type: 'rate' | 'errors' | 'duration';
service: string;
lokiQuery: string;
description: string;
}
export interface ValidationResult {
success: boolean;
errors: string[];
warnings: string[];
executedQueries: Array<{
query: string;
type: 'loki';
success: boolean;
error?: string;
resultCount?: number;
executionTime?: number;
}>;
}
export interface PerformanceOptimizationSuggestion {
type: 'query' | 'configuration' | 'architecture';
priority: 'high' | 'medium' | 'low';
description: string;
currentQuery?: string;
optimizedQuery?: string;
expectedImprovement: string;
implementationSteps: string[];
}
//# sourceMappingURL=monitoring-methods.d.ts.map