UNPKG

@genkit-ai/core

Version:

Genkit AI framework core libraries.

63 lines (59 loc) 1.99 kB
import { ExportResult } from '@opentelemetry/core'; import { LogRecordExporter, ReadableLogRecord } from '@opentelemetry/sdk-logs'; import { SpanExporter, ReadableSpan } from '@opentelemetry/sdk-trace-base'; /** * Copyright 2024 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ declare let telemetryServerUrl: string | undefined; /** * @hidden */ declare function setTelemetryServerUrl(url: string): void; /** * Exports collected OpenTelemetetry spans to the telemetry server. */ declare class TraceServerExporter implements SpanExporter { /** * Export spans. * @param spans * @param resultCallback */ export(spans: ReadableSpan[], resultCallback: (result: ExportResult) => void): void; /** * Shutdown the exporter. */ shutdown(): Promise<void>; /** * Converts span info into trace store format. * @param span */ private _exportInfo; /** * Exports any pending spans in exporter */ forceFlush(): Promise<void>; private _sendSpans; private save; } /** * Exports collected OpenTelemetetry logs to the telemetry server. */ declare class LogServerExporter implements LogRecordExporter { export(logs: ReadableLogRecord[], resultCallback: (result: ExportResult) => void): void; shutdown(): Promise<void>; forceFlush(): Promise<void>; private _sendLogs; } export { LogServerExporter, TraceServerExporter, setTelemetryServerUrl, telemetryServerUrl };