UNPKG

applicationinsights

Version:

Microsoft Application Insights module for Node.js

63 lines (62 loc) 2 kB
import { MeterProvider } from "@opentelemetry/sdk-metrics"; import { ReadableSpan } from "@opentelemetry/sdk-trace-base"; import { ApplicationInsightsConfig } from "../shared/configuration/config"; /** * Azure Monitor PerformanceCounter Metrics */ export declare class PerformanceCounterMetrics { private _internalConfig; private _collectionInterval; private _meterProvider; private _azureExporter; private _metricReader; private _meter; private _requestDurationHistogram; private _requestRateGauge; private _requestRateGaugeCallback; private _memoryPrivateBytesGauge; private _memoryPrivateBytesGaugeCallback; private _memoryAvailableBytesGauge; private _memoryAvailableBytesGaugeCallback; private _processorTimeGauge; private _processorTimeGaugeCallback; private _processTimeGauge; private _processTimeGaugeCallback; private _totalCount; private _intervalExecutionTime; private _lastRequestRate; private _lastAppCpuUsage; private _lastHrtime; private _lastCpus; private _lastCpusProcess; /** * Creates performance counter instruments. * @param options - Distro configuration. * @param config - Application Insights configuration. */ constructor(config: ApplicationInsightsConfig, options?: { collectionInterval: number; }); /** * Shutdown Meter Provider it will return no-op Meters after being called. */ shutdown(): Promise<void>; /** * Force flush Meter Provider. */ flush(): Promise<void>; /** *Get OpenTelemetry MeterProvider */ getMeterProvider(): MeterProvider; /** * Record Span metrics */ recordSpan(span: ReadableSpan): void; private _getRequestRate; private _getPrivateMemory; private _getAvailableMemory; private _getTotalCombinedCpu; private _getProcessorTime; private _getProcessTime; }