UNPKG

apitally

Version:

Simple API monitoring & analytics for REST APIs built with Express, Fastify, NestJS, AdonisJS, Hono, H3, Elysia, Hapi, and Koa.

35 lines (31 loc) 1.34 kB
import { ApitallyConsumer, ApitallyConfig } from '../common/types.js'; import { FastifyError, FastifyPluginAsync, FastifyRequest } from 'fastify'; import { AsyncResource } from 'node:async_hooks'; import { LogRecord } from '../common/requestLogger.js'; import { SpanHandle } from '../common/spanCollector.js'; import '../common/logging.js'; import 'winston'; import 'node:buffer'; import 'node:http'; import '@opentelemetry/sdk-trace-base'; import '../common/tempGzipFile.js'; declare const LOGS_SYMBOL: unique symbol; declare const ASYNC_RESOURCE_SYMBOL: unique symbol; declare const SPAN_HANDLE_SYMBOL: unique symbol; declare module "fastify" { interface FastifyReply { payload: any; serverError?: FastifyError; } interface FastifyRequest { apitallyConsumer?: ApitallyConsumer | string | null; consumerIdentifier?: ApitallyConsumer | string | null; [LOGS_SYMBOL]?: LogRecord[]; [ASYNC_RESOURCE_SYMBOL]?: AsyncResource; [SPAN_HANDLE_SYMBOL]?: SpanHandle; } } declare const apitallyPlugin: FastifyPluginAsync<ApitallyConfig>; declare function setConsumer(request: FastifyRequest, consumer: ApitallyConsumer | string | null | undefined): void; declare const _default: FastifyPluginAsync<ApitallyConfig>; export { apitallyPlugin, _default as default, setConsumer };