UNPKG

@envelop/prometheus

Version:

This plugin tracks the complete execution flow, and reports metrics using Prometheus tracing (based on `prom-client`).

27 lines (26 loc) 1.31 kB
import { Registry } from 'prom-client'; import { createCounter, createHistogram, createSummary } from './utils.cjs'; export type PrometheusTracingPluginConfig = { requestCount?: boolean | string | ReturnType<typeof createCounter>; requestTotalDuration?: boolean | string | ReturnType<typeof createHistogram>; requestSummary?: boolean | string | ReturnType<typeof createSummary>; parse?: boolean | string | ReturnType<typeof createHistogram>; validate?: boolean | string | ReturnType<typeof createHistogram>; contextBuilding?: boolean | string | ReturnType<typeof createHistogram>; execute?: boolean | string | ReturnType<typeof createHistogram>; subscribe?: boolean | string | ReturnType<typeof createHistogram>; errors?: boolean | string | ReturnType<typeof createCounter>; resolvers?: boolean | string | ReturnType<typeof createHistogram>; resolversWhitelist?: string[]; deprecatedFields?: boolean | string | ReturnType<typeof createCounter>; registry?: Registry; skipIntrospection?: boolean; schemaChangeCount?: boolean | string | ReturnType<typeof createCounter>; labels?: { operationName?: boolean; operationType?: boolean; fieldName?: boolean; typeName?: boolean; returnType?: boolean; }; };