UNPKG

@jackchuka/gql-ingest

Version:

A CLI tool for ingesting data from files into a GraphQL API. Supports CSV, JSON, JSONL, and YAML file formats.

52 lines 1.61 kB
export interface EntityMetrics { rowsProcessed: number; successfulRows: number; failedRows: number; duration: number; } export interface ProcessingMetrics { totalRows: number; successfulOperations: number; failedOperations: number; totalDuration: number; entities: Record<string, EntityMetrics>; } export interface InternalMetrics { totalEntities: number; totalSuccesses: number; totalFailures: number; entityMetrics: Map<string, InternalEntityMetrics>; requestDurations: number[]; retryAttempts: number; retrySuccesses: number; retryFailures: number; startTime: number; endTime?: number; } export interface InternalEntityMetrics { entityName: string; successCount: number; failureCount: number; startTime: number; endTime?: number; } export declare class MetricsCollector { private metrics; constructor(); startEntityProcessing(entityName: string): void; recordSuccess(entityName: string): void; recordFailure(entityName: string): void; finishEntityProcessing(entityName: string): void; finishProcessing(): InternalMetrics; getEntityMetrics(entityName: string): InternalEntityMetrics | undefined; getMetrics(): ProcessingMetrics; getTotalProcessed(): number; getSuccessRate(): number; recordRequestDuration(duration: number): void; recordRetrySuccess(attempts: number): void; recordRetryFailure(attempts: number): void; getAverageRequestDuration(): number; getDurationMs(): number; generateSummary(): string; } //# sourceMappingURL=metrics.d.ts.map