node-universe
Version:
基于 Nodejs 环境的一款微服务框架,原理来自于宇宙中的恒星,行星,卫星等系统。
33 lines (32 loc) • 1.71 kB
TypeScript
import Star from '../star';
import { BaseMetricOptions, MetricRegistryOptions } from '../../typings/metric';
import { LoggerInstance } from '../../typings/logger';
import BaseMetric from './type/base';
import { GenericObject } from '../../typings';
import MetricBaseReporter from './reporters/base';
export default class MetricRegistry {
star: Star;
logger: LoggerInstance;
dirty: boolean;
options: MetricRegistryOptions;
store: Map<string, BaseMetric>;
reporter: MetricBaseReporter[];
collectTimer: NodeJS.Timer | null;
constructor(star: Star, options?: MetricRegistryOptions | boolean);
init(): void;
stop(): Promise<void[]> | undefined;
isEnabled(): boolean | undefined;
changed(metric: BaseMetric, value: any, labels?: GenericObject, timestamp?: number): void;
register(options: BaseMetricOptions): BaseMetric | null;
hasMetric(name: string): boolean;
getMetric(name: string): BaseMetric | null;
set(name: string, value: any | null, labels?: GenericObject, timestamp?: number): void | null;
increment(name: string, labels?: GenericObject | null, value?: number, timestamp?: number): void | null;
decrement(name: string, labels?: GenericObject | null, value?: number, timestamp?: number): void | null;
observe(name: string, value: number, labels?: GenericObject, timestamp?: number): void | null;
reset(name: string, labels?: GenericObject, timestamp?: number): null | undefined;
resetAll(name: string, timestamp?: number): null | undefined;
timer(name?: string, labels?: GenericObject, timestamp?: number): () => number;
list(options?: GenericObject): GenericObject[];
pluralizeUnit(unit: string): string;
}