UNPKG

node-universe

Version:

基于 Nodejs 环境的一款微服务框架,原理来自于宇宙中的恒星,行星,卫星等系统。

71 lines (70 loc) 1.88 kB
import { GenericObject } from '..'; export interface MetricRegistryOptions { enabled?: boolean; collectProcessMetrics?: boolean; collectInterval?: number; reporter?: string | MetricsReporterOptions | (MetricsReporterOptions | string)[] | null; defaultBuckets?: number[]; defaultQuantiles?: number[]; defaultMaxAgeSeconds?: number; defaultAgeBuckets?: number; defaultAggregator?: string; } export interface MetricsReporterOptions { type: string; options?: MetricReporterOptions; } export interface MetricReporterOptions { includes?: string | string[]; excludes?: string | string[]; metricNamePrefix?: string; metricNameSuffix?: string; metricNameFormatter?: (name: string) => string; labelNameFormatter?: (name: string) => string; [key: string]: any; } export interface BaseMetricOptions { type: string; name: string; description?: string; labelNames?: string[]; unit?: string; aggregator?: string; [key: string]: any; } export interface GaugeMetricSnapshot { value: number; labels: GenericObject; timestamp: number; } export interface InfoMetricSnapshot { value: number; labels: GenericObject; timestamp: number; } export interface HistogramMetricSnapshot { labels: GenericObject; count: number; sum: number; timestamp: number; buckets?: { [key: string]: number; }; min?: number | null; mean?: number | null; variance?: number | null; stdDev?: number | null; max?: number | null; quantiles?: { [key: string]: number; }; } export type MetricSnapshot = GaugeMetricSnapshot | InfoMetricSnapshot | HistogramMetricSnapshot; export interface BaseMetricPOJO { type: string; name: string; description?: string; labelNames: string[]; unit?: string; values: MetricSnapshot[]; }