signoz-mcp-server
Version:
Model Context Protocol server for SigNoz observability platform
124 lines • 4.42 kB
TypeScript
import { ApiClientOptions, Service, Dashboard, AlertRule, NotificationChannel, Host, Pod, Trace, LogEntry, Metric, QueryRangeRequest, QueryResult, License, FeatureFlag, TimeRange, FilterSet } from './types';
export declare class SigNozApiClient {
private axios;
private baseURL;
private apiKey;
constructor(options: ApiClientOptions);
private setupRetryInterceptor;
private shouldRetry;
private request;
getVersion(): Promise<{
version: string;
ee: boolean;
setupCompleted: boolean;
}>;
getHealth(): Promise<{
status: string;
}>;
getFeatures(): Promise<FeatureFlag[]>;
queryRange(request: QueryRangeRequest): Promise<{
result: QueryResult[];
}>;
queryRangeV4(request: QueryRangeRequest): Promise<{
result: QueryResult[];
}>;
queryRangeV5(request: QueryRangeRequest): Promise<{
result: QueryResult[];
}>;
prometheusQuery(query: string, time?: number): Promise<any>;
prometheusQueryRange(query: string, start: number, end: number, step: string): Promise<any>;
getServices(timeRange: TimeRange, filters?: any): Promise<Service[]>;
getServicesList(): Promise<string[]>;
getTrace(traceId: string): Promise<Trace>;
getTopOperations(service: string, timeRange: TimeRange): Promise<any[]>;
getDependencyGraph(timeRange: TimeRange): Promise<any>;
getLogs(params: {
limit?: number;
orderBy?: string;
order?: 'asc' | 'desc';
q?: string;
timestampStart: number;
timestampEnd: number;
idGt?: string;
idLt?: string;
}): Promise<LogEntry[]>;
searchLogsV3(params: {
start: number;
end: number;
query?: string;
limit?: number;
offset?: number;
orderBy?: string;
order?: 'asc' | 'desc';
}): Promise<{
logs: LogEntry[];
total: number;
}>;
getLogFields(): Promise<any>;
aggregateLogs(params: {
q?: string;
timestampStart: number;
timestampEnd: number;
groupBy?: string;
function: string;
step: number;
}): Promise<any>;
liveTailLogs(params: {
q?: string;
filters?: string;
}, onLog: (log: LogEntry) => void, onError?: (error: any) => void): () => void;
getDashboards(): Promise<Dashboard[]>;
getDashboard(id: string): Promise<Dashboard>;
createDashboard(dashboard: Omit<Dashboard, 'id'>): Promise<Dashboard>;
updateDashboard(id: string, dashboard: Partial<Dashboard>): Promise<Dashboard>;
deleteDashboard(id: string): Promise<void>;
getAlertRules(): Promise<AlertRule[]>;
getAlertRule(id: number): Promise<AlertRule>;
createAlertRule(rule: Omit<AlertRule, 'id'>): Promise<AlertRule>;
updateAlertRule(id: number, rule: Partial<AlertRule>): Promise<AlertRule>;
deleteAlertRule(id: number): Promise<void>;
testAlertRule(rule: AlertRule): Promise<any>;
getActiveAlerts(): Promise<any[]>;
getNotificationChannels(): Promise<NotificationChannel[]>;
createNotificationChannel(channel: Omit<NotificationChannel, 'id'>): Promise<NotificationChannel>;
testNotificationChannel(channel: NotificationChannel): Promise<any>;
getHosts(params: {
start: number;
end: number;
filters?: FilterSet;
groupBy?: any[];
orderBy?: {
columnName: string;
order: 'asc' | 'desc';
};
limit?: number;
offset?: number;
}): Promise<{
records: Host[];
total: number;
}>;
getPods(params: {
start: number;
end: number;
filters?: FilterSet;
groupBy?: any[];
orderBy?: {
columnName: string;
order: 'asc' | 'desc';
};
limit?: number;
offset?: number;
}): Promise<{
records: Pod[];
total: number;
}>;
getHostAttributeKeys(): Promise<string[]>;
getPodAttributeKeys(): Promise<string[]>;
getMetrics(): Promise<Metric[]>;
getMetricFilterKeys(): Promise<string[]>;
getMetricFilterValues(params: any): Promise<string[]>;
getActiveLicense(): Promise<License>;
activateLicense(key: string): Promise<void>;
connectQueryProgress(queryId: string, onProgress: (progress: any) => void, onError?: (error: any) => void): () => void;
}
//# sourceMappingURL=client.d.ts.map