File size: 1,189 Bytes
6111b2b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | /**
* Usage tracking types for API call monitoring and statistics.
*/
export interface UsageEntry {
id: string;
date: string;
provider: string;
model: string;
inputTokens: number;
outputTokens: number;
totalTokens: number;
latencyMs: number;
statusCode: number;
comboId?: string;
apiKeyId?: string;
}
export interface UsageStats {
totalCalls: number;
totalTokens: number;
totalInputTokens: number;
totalOutputTokens: number;
avgLatencyMs: number;
errorRate: number;
byProvider: Record<string, ProviderUsageStats>;
byModel: Record<string, ModelUsageStats>;
}
export interface ProviderUsageStats {
calls: number;
tokens: number;
errors: number;
avgLatencyMs: number;
}
export interface ModelUsageStats {
calls: number;
inputTokens: number;
outputTokens: number;
avgLatencyMs: number;
}
export interface CallLog {
id: string;
timestamp: string;
method: string;
path: string;
provider: string;
model: string;
statusCode: number;
latencyMs: number;
inputTokens: number;
outputTokens: number;
error?: string;
comboId?: string;
connectionId?: string;
}
|