UNPKG

@genkit-ai/telemetry-server

Version:
40 lines (39 loc) 1.27 kB
import { TraceQueryFilter, type TraceData } from '@genkit-ai/tools-common'; import { Mutex } from 'async-mutex'; import { TraceQuery, TraceQueryResponse, TraceStore } from './types'; export declare class LocalFileTraceStore implements TraceStore { private readonly storeRoot; private readonly indexRoot; private mutexes; private filters; private readonly index; static defaultFilters: Record<string, string>; constructor(options?: { filters?: Record<string, string>; storeRoot?: string; indexRoot?: string; useIndex?: boolean; }); init(): Promise<void>; load(id: string): Promise<TraceData | undefined>; getMutex(id: string): Mutex; save(id: string, rawTrace: TraceData): Promise<void>; list(query?: TraceQuery): Promise<TraceQueryResponse>; private listFromFiles; private filter; } export interface IndexSearchResult { pageLastIndex?: number; data: Record<string, string>[]; } export declare class Index { private indexRoot; private currentIndexFile; constructor(indexRoot: string); add(traceData: TraceData): void; search(query: { limit: number; startFromIndex?: number; filter?: TraceQueryFilter; }): IndexSearchResult; }