@interopio/otel 0.0.5 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/metrics/application/count.js +2 -2
- package/dist/metrics/application/count.js.map +1 -1
- package/dist/metrics/application/cpu.d.ts +3 -3
- package/dist/metrics/application/cpu.js +1 -1
- package/dist/metrics/application/cpu.js.map +1 -1
- package/dist/metrics/application/duration.d.ts +20 -7
- package/dist/metrics/application/duration.js +89 -21
- package/dist/metrics/application/duration.js.map +1 -1
- package/dist/metrics/application/durationHistogram.d.ts +3 -3
- package/dist/metrics/application/durationHistogram.js +2 -2
- package/dist/metrics/application/durationHistogram.js.map +1 -1
- package/dist/metrics/application/memory.d.ts +3 -3
- package/dist/metrics/application/memory.js +1 -1
- package/dist/metrics/application/memory.js.map +1 -1
- package/dist/metrics/application/started.js +1 -1
- package/dist/metrics/application/started.js.map +1 -1
- package/dist/metrics/application/startupHistogram.d.ts +15 -5
- package/dist/metrics/application/startupHistogram.js +35 -8
- package/dist/metrics/application/startupHistogram.js.map +1 -1
- package/dist/metrics/application/stopped.js +1 -1
- package/dist/metrics/application/stopped.js.map +1 -1
- package/dist/metrics/base/base.d.ts +4 -2
- package/dist/metrics/base/base.js +15 -5
- package/dist/metrics/base/base.js.map +1 -1
- package/dist/metrics/base/gauge.d.ts +7 -7
- package/dist/metrics/base/gauge.js.map +1 -1
- package/dist/metrics/base/observable.d.ts +5 -5
- package/dist/metrics/base/observable.js.map +1 -1
- package/dist/metrics/dependencyBuilder.d.ts +5 -1
- package/dist/metrics/dependencyBuilder.js +12 -0
- package/dist/metrics/dependencyBuilder.js.map +1 -1
- package/dist/metrics/factoryBuilder.d.ts +2 -3
- package/dist/metrics/factoryBuilder.js +20 -30
- package/dist/metrics/factoryBuilder.js.map +1 -1
- package/dist/metrics/layout/startupHistogram.d.ts +15 -5
- package/dist/metrics/layout/startupHistogram.js +35 -8
- package/dist/metrics/layout/startupHistogram.js.map +1 -1
- package/dist/metrics/platform/startup.d.ts +2 -2
- package/dist/metrics/platform/startup.js +2 -2
- package/dist/metrics/platform/startup.js.map +1 -1
- package/dist/metrics/settingsBuilder.d.ts +2 -3
- package/dist/metrics/settingsBuilder.js +23 -35
- package/dist/metrics/settingsBuilder.js.map +1 -1
- package/dist/metrics/system/cpu.d.ts +1 -1
- package/dist/metrics/system/cpu.js.map +1 -1
- package/dist/metrics/system/memory.d.ts +1 -1
- package/dist/metrics/system/memory.js.map +1 -1
- package/dist/metrics/types.d.ts +13 -4
- package/dist/metrics/workspace/startup.d.ts +8 -0
- package/dist/metrics/workspace/startup.js +12 -0
- package/dist/metrics/workspace/startup.js.map +1 -0
- package/dist/metrics/workspace/stopped.d.ts +17 -0
- package/dist/metrics/workspace/stopped.js +46 -0
- package/dist/metrics/workspace/stopped.js.map +1 -0
- package/dist/validation/metrics/application/count.d.ts +3 -6
- package/dist/validation/metrics/application/count.js +6 -6
- package/dist/validation/metrics/application/count.js.map +1 -1
- package/dist/validation/metrics/application/duration.d.ts +1 -1
- package/dist/validation/metrics/application/duration.js +1 -1
- package/dist/validation/metrics/application/duration.js.map +1 -1
- package/dist/validation/metrics/application/started.d.ts +2 -3
- package/dist/validation/metrics/application/started.js +3 -3
- package/dist/validation/metrics/application/started.js.map +1 -1
- package/dist/validation/metrics/application/startupHistogram.d.ts +6 -0
- package/dist/validation/metrics/application/{startup.js → startupHistogram.js} +4 -4
- package/dist/validation/metrics/application/startupHistogram.js.map +1 -0
- package/dist/validation/metrics/application/stopped.d.ts +2 -3
- package/dist/validation/metrics/application/stopped.js +3 -3
- package/dist/validation/metrics/application/stopped.js.map +1 -1
- package/dist/validation/metrics/base/gauge.d.ts +2 -1
- package/dist/validation/metrics/base/gauge.js.map +1 -1
- package/dist/validation/metrics/layout/startupHistogram.d.ts +6 -0
- package/dist/validation/metrics/layout/{startup.js → startupHistogram.js} +4 -4
- package/dist/validation/metrics/layout/startupHistogram.js.map +1 -0
- package/dist/validation/metrics/workspace/stopped.d.ts +6 -0
- package/dist/validation/metrics/workspace/stopped.js +16 -0
- package/dist/validation/metrics/workspace/stopped.js.map +1 -0
- package/package.json +1 -1
- package/dist/metrics/application/durationBase.d.ts +0 -21
- package/dist/metrics/application/durationBase.js +0 -102
- package/dist/metrics/application/durationBase.js.map +0 -1
- package/dist/metrics/application/startup.d.ts +0 -8
- package/dist/metrics/application/startup.js +0 -29
- package/dist/metrics/application/startup.js.map +0 -1
- package/dist/metrics/application/startupBase.d.ts +0 -17
- package/dist/metrics/application/startupBase.js +0 -68
- package/dist/metrics/application/startupBase.js.map +0 -1
- package/dist/metrics/layout/startup.d.ts +0 -8
- package/dist/metrics/layout/startup.js +0 -29
- package/dist/metrics/layout/startup.js.map +0 -1
- package/dist/metrics/layout/startupBase.d.ts +0 -18
- package/dist/metrics/layout/startupBase.js +0 -71
- package/dist/metrics/layout/startupBase.js.map +0 -1
- package/dist/validation/metrics/application/startup.d.ts +0 -6
- package/dist/validation/metrics/application/startup.js.map +0 -1
- package/dist/validation/metrics/layout/startup.d.ts +0 -6
- package/dist/validation/metrics/layout/startup.js.map +0 -1
|
@@ -35,7 +35,7 @@ class ApplicationCountMetric extends base_1.MetricBase {
|
|
|
35
35
|
try {
|
|
36
36
|
this.validator.validateInstanceStarted(args);
|
|
37
37
|
this.logger.debug(`instance started for application ${args.application} and metric ${this.settings.name} is being invoked`);
|
|
38
|
-
const data = this.
|
|
38
|
+
const data = this.getApplicationData(args.application);
|
|
39
39
|
this.appCountMetric.add(1, data);
|
|
40
40
|
this.logger.debug(`metric ${this.settings.name} sent 1 more for app ${data.application}`);
|
|
41
41
|
}
|
|
@@ -48,7 +48,7 @@ class ApplicationCountMetric extends base_1.MetricBase {
|
|
|
48
48
|
try {
|
|
49
49
|
this.validator.validateInstanceStopped(args);
|
|
50
50
|
this.logger.debug(`instance stopped for application ${args.application} and metric ${this.settings.name} is being invoked`);
|
|
51
|
-
const data = this.
|
|
51
|
+
const data = this.getApplicationData(args.application);
|
|
52
52
|
this.appCountMetric.add(-1, data);
|
|
53
53
|
this.logger.debug(`metric ${this.settings.name} sent 1 less for app ${data.application}`);
|
|
54
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"count.js","sourceRoot":"","sources":["../../../src/metrics/application/count.ts"],"names":[],"mappings":";;;AAGA,uCAA0C;AAC1C,sEAA6F;AAE7F,MAAa,sBAAuB,SAAQ,iBAAU;IAMlD,YACI,QAAiC,EAC1B,KAAY,EACnB,MAAc,EACd,MAAuB,EAChB,sBAA6C,EAC7C,sBAA6C;QAEpD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QANzB,UAAK,GAAL,KAAK,CAAO;QAGZ,2BAAsB,GAAtB,sBAAsB,CAAuB;QAC7C,2BAAsB,GAAtB,sBAAsB,CAAuB;QAIpD,IAAI,CAAC,SAAS,GAAG,IAAI,uCAA+B,EAAE,CAAC;QACvD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEkB,YAAY;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAE5E,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,SAAS;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5F,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE5F,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,WAAW;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,aAAa;QAC5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEO,qBAAqB,CAAC,IAA+B;QACzD,IAAI;YACA,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAE7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,WAAW,eAAe,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAC;YAE5H,MAAM,IAAI,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"count.js","sourceRoot":"","sources":["../../../src/metrics/application/count.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Meter, ObservableResult } from "@opentelemetry/api";
|
|
2
|
-
import {
|
|
2
|
+
import { TelemetryMetricApplicationData, TelemetryMetricSettings, PerformanceProvider } from "../types";
|
|
3
3
|
import { TelemetryLogger } from "../../types";
|
|
4
4
|
import { GaugeMetricBase } from "../base/gauge";
|
|
5
|
-
export declare class ApplicationCPUMetric extends GaugeMetricBase {
|
|
5
|
+
export declare class ApplicationCPUMetric extends GaugeMetricBase<TelemetryMetricApplicationData> {
|
|
6
6
|
perfProvider: PerformanceProvider;
|
|
7
7
|
constructor(settings: TelemetryMetricSettings, meter: Meter, userId: string, logger: TelemetryLogger, perfProvider: PerformanceProvider);
|
|
8
8
|
protected subscribeCore(): Promise<void>;
|
|
9
|
-
protected observeCore(result: ObservableResult<
|
|
9
|
+
protected observeCore(result: ObservableResult<TelemetryMetricApplicationData>): Promise<void>;
|
|
10
10
|
protected unsubscribeCore(): Promise<void>;
|
|
11
11
|
}
|
|
@@ -27,7 +27,7 @@ class ApplicationCPUMetric extends gauge_1.GaugeMetricBase {
|
|
|
27
27
|
if (!validator_1.Validator.isNullOrUndefined(appsCPU)) {
|
|
28
28
|
performanceValidator.validateAppsCPU(appsCPU);
|
|
29
29
|
appsCPU.forEach((info) => {
|
|
30
|
-
const data = Object.assign({ applicationInstance: info.instance }, this.
|
|
30
|
+
const data = Object.assign({ applicationInstance: info.instance }, this.getApplicationData(info.app));
|
|
31
31
|
result.observe(info.cpu, data);
|
|
32
32
|
this.logger.debug(`metric ${this.settings.name} sent cpu ${info.cpu} for app ${data.application} and instance ${data.applicationInstance}`);
|
|
33
33
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cpu.js","sourceRoot":"","sources":["../../../src/metrics/application/cpu.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,yCAAgD;AAChD,wDAA6E;AAC7E,qDAAkD;AAElD,MAAa,oBAAqB,SAAQ,
|
|
1
|
+
{"version":3,"file":"cpu.js","sourceRoot":"","sources":["../../../src/metrics/application/cpu.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,yCAAgD;AAChD,wDAA6E;AAC7E,qDAAkD;AAElD,MAAa,oBAAqB,SAAQ,uBAA+C;IACrF,YACI,QAAiC,EACjC,KAAY,EACZ,MAAc,EACd,MAAuB,EAChB,YAAiC;QAExC,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAFhC,iBAAY,GAAZ,YAAY,CAAqB;IAG5C,CAAC;IAEkB,aAAa,KAAoB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAEtD,WAAW,CAAC,MAAwD;;YACzF,MAAM,oBAAoB,GAAG,IAAI,mCAA4B,EAAE,CAAC;YAChE,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAEjD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;YACrD,IAAI,CAAC,qBAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE;gBACvC,oBAAoB,CAAC,eAAe,CAAC,OAAQ,CAAC,CAAC;gBAE/C,OAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBACtB,MAAM,IAAI,mBAAK,mBAAmB,EAAE,IAAI,CAAC,QAAQ,IAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAE,CAAC;oBAC1F,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,aAAa,IAAI,CAAC,GAAG,YAAY,IAAI,CAAC,WAAW,iBAAiB,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;gBAChJ,CAAC,CAAC,CAAC;aACN;QACL,CAAC;KAAA;IAEkB,eAAe,KAAoB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;CACpF;AA9BD,oDA8BC"}
|
|
@@ -1,8 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { Meter } from "@opentelemetry/api";
|
|
2
|
+
import { InstanceFocusedHandler, TelemetryMetricSettings, TelemetryMetricApplicationData } from "../types";
|
|
3
|
+
import { TelemetryLogger } from "../../types";
|
|
4
|
+
import { ObservableMetricBase } from "../base/observable";
|
|
5
|
+
export declare abstract class ApplicationDurationMetricBase extends ObservableMetricBase<TelemetryMetricApplicationData> {
|
|
6
|
+
instanceFocusHandler: InstanceFocusedHandler;
|
|
7
|
+
private focusedTimes;
|
|
8
|
+
private currentFocusedApp?;
|
|
9
|
+
private unInstanceFocusHandler;
|
|
10
|
+
private validator;
|
|
11
|
+
constructor(settings: TelemetryMetricSettings, meter: Meter, userId: string, logger: TelemetryLogger, instanceFocusHandler: InstanceFocusedHandler);
|
|
12
|
+
protected subscribeCore(): Promise<void>;
|
|
13
|
+
protected observeCore(): Promise<void>;
|
|
14
|
+
protected unsubscribeCore(): Promise<void>;
|
|
15
|
+
protected abstract sendMetric(focusedPeriods: number[], data: TelemetryMetricApplicationData): void;
|
|
16
|
+
private handleFocusChanged;
|
|
17
|
+
private handleFocusChangedCore;
|
|
18
|
+
private handleGotFocus;
|
|
19
|
+
private handleLostFocus;
|
|
20
|
+
private addFocusLostEventCore;
|
|
8
21
|
}
|
|
@@ -1,29 +1,97 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
this.
|
|
3
|
+
exports.ApplicationDurationMetricBase = void 0;
|
|
4
|
+
const validator_1 = require("../../utils/validator");
|
|
5
|
+
const duration_1 = require("../../validation/metrics/application/duration");
|
|
6
|
+
const observable_1 = require("../base/observable");
|
|
7
|
+
class ApplicationDurationMetricBase extends observable_1.ObservableMetricBase {
|
|
8
|
+
constructor(settings, meter, userId, logger, instanceFocusHandler) {
|
|
9
|
+
super(settings, meter, userId, logger);
|
|
10
|
+
this.instanceFocusHandler = instanceFocusHandler;
|
|
11
|
+
// application -> focused times for a given period
|
|
12
|
+
this.focusedTimes = new Map();
|
|
13
|
+
this.validator = new duration_1.ApplicationDurationMetricValidator();
|
|
14
|
+
this.validator.validate(this);
|
|
15
|
+
}
|
|
16
|
+
subscribeCore() {
|
|
17
|
+
this.unInstanceFocusHandler = this.instanceFocusHandler(this.handleFocusChanged.bind(this));
|
|
18
|
+
return Promise.resolve();
|
|
19
|
+
}
|
|
20
|
+
observeCore() {
|
|
21
|
+
const hasFocusedApp = this.currentFocusedApp !== undefined;
|
|
22
|
+
const currentFocusedApp = hasFocusedApp ? this.currentFocusedApp.name : undefined;
|
|
23
|
+
if (hasFocusedApp) {
|
|
24
|
+
this.handleFocusChanged({ application: currentFocusedApp, focused: false });
|
|
25
|
+
}
|
|
26
|
+
this.focusedTimes.forEach((focusedPeriods, application) => {
|
|
27
|
+
const data = this.getApplicationData(application);
|
|
28
|
+
this.sendMetric(focusedPeriods, data);
|
|
29
|
+
focusedPeriods.splice(0);
|
|
30
|
+
});
|
|
31
|
+
if (hasFocusedApp) {
|
|
32
|
+
this.handleFocusChanged({ application: currentFocusedApp, focused: true });
|
|
33
|
+
}
|
|
13
34
|
return Promise.resolve();
|
|
14
35
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
this.
|
|
36
|
+
unsubscribeCore() {
|
|
37
|
+
this.unInstanceFocusHandler();
|
|
38
|
+
return Promise.resolve();
|
|
39
|
+
}
|
|
40
|
+
handleFocusChanged(args) {
|
|
41
|
+
try {
|
|
42
|
+
this.validator.validateFocusChanged(args);
|
|
43
|
+
this.logger.debug(`focused changed is being invoked for metric ${this.settings.name} with ${JSON.stringify(args)}`);
|
|
44
|
+
return this.handleFocusChangedCore(args);
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
const message = `error while executing handleFocusChanges for metric from type: ${this.settings.type}`;
|
|
48
|
+
this.logger.error(message, error);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
handleFocusChangedCore(e) {
|
|
52
|
+
const focused = e.focused;
|
|
53
|
+
const application = e.application;
|
|
54
|
+
if (focused) {
|
|
55
|
+
this.handleGotFocus(application);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
try {
|
|
59
|
+
this.handleLostFocus(application);
|
|
60
|
+
}
|
|
61
|
+
finally {
|
|
62
|
+
this.currentFocusedApp = undefined;
|
|
63
|
+
}
|
|
22
64
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
65
|
+
}
|
|
66
|
+
handleGotFocus(application) {
|
|
67
|
+
const now = new Date().getTime();
|
|
68
|
+
this.currentFocusedApp = { name: application, gotFocusTime: now };
|
|
69
|
+
if (!this.focusedTimes.has(this.currentFocusedApp.name)) {
|
|
70
|
+
this.focusedTimes.set(this.currentFocusedApp.name, []);
|
|
71
|
+
}
|
|
72
|
+
this.logger.debug(`got focus event has been added for metric ${this.settings.name}`);
|
|
73
|
+
}
|
|
74
|
+
handleLostFocus(application) {
|
|
75
|
+
if (validator_1.Validator.isNullOrUndefined(this.currentFocusedApp)) {
|
|
76
|
+
throw new Error(`cannot handle focus lost for application ${application} since there is no previous got focus event`);
|
|
77
|
+
}
|
|
78
|
+
const currentFocusedApp = this.currentFocusedApp.name;
|
|
79
|
+
const gotFocusTime = this.currentFocusedApp.gotFocusTime;
|
|
80
|
+
if (application !== currentFocusedApp) {
|
|
81
|
+
throw new Error(`cannot handle focus lost for application ${application} since the previous got focus event had come from application ${currentFocusedApp}`);
|
|
82
|
+
}
|
|
83
|
+
if (!this.focusedTimes.has(application)) {
|
|
84
|
+
throw new Error(`there is no got focus event for ${application}`);
|
|
85
|
+
}
|
|
86
|
+
this.addFocusLostEventCore(currentFocusedApp, gotFocusTime);
|
|
87
|
+
this.logger.debug(`lost focus event has been added for metric ${this.settings.name}`);
|
|
88
|
+
}
|
|
89
|
+
addFocusLostEventCore(application, gotFocusTime) {
|
|
90
|
+
const now = new Date().getTime();
|
|
91
|
+
const focusedTime = (now - gotFocusTime);
|
|
92
|
+
const focusedTimes = this.focusedTimes.get(application);
|
|
93
|
+
focusedTimes.push(focusedTime);
|
|
26
94
|
}
|
|
27
95
|
}
|
|
28
|
-
exports.
|
|
96
|
+
exports.ApplicationDurationMetricBase = ApplicationDurationMetricBase;
|
|
29
97
|
//# sourceMappingURL=duration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../src/metrics/application/duration.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../src/metrics/application/duration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ApplicationDurationMetricBase } from "./
|
|
1
|
+
import { TelemetryMetricApplicationData } from "../types";
|
|
2
|
+
import { ApplicationDurationMetricBase } from "./duration";
|
|
3
3
|
export declare class ApplicationDurationHistogramMetric extends ApplicationDurationMetricBase {
|
|
4
4
|
private appDurationMetric;
|
|
5
5
|
protected createMetricCore(): Promise<void>;
|
|
6
|
-
protected sendMetric(focusedPeriods: number[], data:
|
|
6
|
+
protected sendMetric(focusedPeriods: number[], data: TelemetryMetricApplicationData): void;
|
|
7
7
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ApplicationDurationHistogramMetric = void 0;
|
|
4
|
-
const
|
|
5
|
-
class ApplicationDurationHistogramMetric extends
|
|
4
|
+
const duration_1 = require("./duration");
|
|
5
|
+
class ApplicationDurationHistogramMetric extends duration_1.ApplicationDurationMetricBase {
|
|
6
6
|
createMetricCore() {
|
|
7
7
|
const advice = { explicitBucketBoundaries: this.settings.buckets };
|
|
8
8
|
this.appDurationMetric = this.meter.createHistogram(this.settings.name, { description: this.settings.description, unit: this.settings.unit, advice });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"durationHistogram.js","sourceRoot":"","sources":["../../../src/metrics/application/durationHistogram.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"file":"durationHistogram.js","sourceRoot":"","sources":["../../../src/metrics/application/durationHistogram.ts"],"names":[],"mappings":";;;AAEA,yCAA2D;AAE3D,MAAa,kCAAmC,SAAQ,wCAA6B;IAG9D,gBAAgB;QAC/B,MAAM,MAAM,GAAG,EAAE,wBAAwB,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAEtJ,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,UAAU,CAAC,cAAwB,EAAE,IAAoC;QACxF,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC9B,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,sBAAsB,MAAM,YAAY,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9G,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAhBD,gFAgBC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Meter, ObservableResult } from "@opentelemetry/api";
|
|
2
|
-
import {
|
|
2
|
+
import { TelemetryMetricApplicationData, TelemetryMetricSettings, PerformanceProvider } from "../types";
|
|
3
3
|
import { TelemetryLogger } from "../../types";
|
|
4
4
|
import { GaugeMetricBase } from "../base/gauge";
|
|
5
|
-
export declare class ApplicationMemoryMetric extends GaugeMetricBase {
|
|
5
|
+
export declare class ApplicationMemoryMetric extends GaugeMetricBase<TelemetryMetricApplicationData> {
|
|
6
6
|
perfProvider: PerformanceProvider;
|
|
7
7
|
constructor(settings: TelemetryMetricSettings, meter: Meter, userId: string, logger: TelemetryLogger, perfProvider: PerformanceProvider);
|
|
8
8
|
protected subscribeCore(): Promise<void>;
|
|
9
|
-
protected observeCore(result: ObservableResult<
|
|
9
|
+
protected observeCore(result: ObservableResult<TelemetryMetricApplicationData>): Promise<void>;
|
|
10
10
|
protected unsubscribeCore(): Promise<void>;
|
|
11
11
|
}
|
|
@@ -28,7 +28,7 @@ class ApplicationMemoryMetric extends gauge_1.GaugeMetricBase {
|
|
|
28
28
|
validator.validateAppsMemory(appsMemory);
|
|
29
29
|
appsMemory.forEach((info) => {
|
|
30
30
|
var _a;
|
|
31
|
-
const data = Object.assign({ applicationInstance: info.instance }, this.
|
|
31
|
+
const data = Object.assign({ applicationInstance: info.instance }, this.getApplicationData(info.app));
|
|
32
32
|
result.observe((_a = info.memory) !== null && _a !== void 0 ? _a : 0, data);
|
|
33
33
|
this.logger.debug(`metric ${this.settings.name} sent memory ${info.memory} for app ${data.application} and instance ${data.applicationInstance}`);
|
|
34
34
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/metrics/application/memory.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,yCAAgD;AAChD,wDAA6E;AAC7E,qDAAkD;AAElD,MAAa,uBAAwB,SAAQ,
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/metrics/application/memory.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,yCAAgD;AAChD,wDAA6E;AAC7E,qDAAkD;AAElD,MAAa,uBAAwB,SAAQ,uBAA+C;IACxF,YACI,QAAiC,EACjC,KAAY,EACZ,MAAc,EACd,MAAuB,EAChB,YAAiC;QAExC,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAFhC,iBAAY,GAAZ,YAAY,CAAqB;IAG5C,CAAC;IAEkB,aAAa,KAAoB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAEtD,WAAW,CAAC,MAAwD;;YACzF,MAAM,SAAS,GAAG,IAAI,mCAA4B,EAAE,CAAC;YACrD,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAEtC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;YAE3D,IAAI,CAAC,qBAAS,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE;gBAE1C,SAAS,CAAC,kBAAkB,CAAC,UAAW,CAAC,CAAC;gBAE1C,UAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;;oBACzB,MAAM,IAAI,mBAAK,mBAAmB,EAAE,IAAI,CAAC,QAAQ,IAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAE,CAAC;oBAC1F,MAAM,CAAC,OAAO,CAAC,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,EAAE,IAAI,CAAC,CAAC;oBACvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,gBAAgB,IAAI,CAAC,MAAM,YAAY,IAAI,CAAC,WAAW,iBAAiB,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;gBACtJ,CAAC,CAAC,CAAC;aACN;QACL,CAAC;KAAA;IAEkB,eAAe,KAAoB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;CACpF;AAhCD,0DAgCC"}
|
|
@@ -32,7 +32,7 @@ class ApplicationStartedMetric extends base_1.MetricBase {
|
|
|
32
32
|
try {
|
|
33
33
|
this.validator.validateInstanceStarted(args);
|
|
34
34
|
this.logger.debug(`instance started for application ${args.application} and metric ${this.settings.name} is being invoked`);
|
|
35
|
-
const data = this.
|
|
35
|
+
const data = this.getApplicationData(args.application);
|
|
36
36
|
this.appStartedMetric.add(1, data);
|
|
37
37
|
this.logger.debug(`metric ${this.settings.name} sent 1 more for app ${data.application}`);
|
|
38
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"started.js","sourceRoot":"","sources":["../../../src/metrics/application/started.ts"],"names":[],"mappings":";;;AAGA,uCAA0C;AAC1C,0EAAiG;AAEjG,MAAa,wBAAyB,SAAQ,iBAAU;IAKpD,YACI,QAAiC,EAC1B,KAAY,EACnB,MAAc,EACd,MAAuB,EAChB,sBAA6C;QAEpD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QALzB,UAAK,GAAL,KAAK,CAAO;QAGZ,2BAAsB,GAAtB,sBAAsB,CAAuB;QAGpD,IAAI,CAAC,SAAS,GAAG,IAAI,2CAAiC,EAAE,CAAC;QACzD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEkB,YAAY;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAExE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,SAAS;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE5F,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,aAAa;QAC5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,WAAW;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEO,qBAAqB,CAAC,IAA+B;QACzD,IAAI;YACA,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAE7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,WAAW,eAAe,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAC;YAE5H,MAAM,IAAI,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"started.js","sourceRoot":"","sources":["../../../src/metrics/application/started.ts"],"names":[],"mappings":";;;AAGA,uCAA0C;AAC1C,0EAAiG;AAEjG,MAAa,wBAAyB,SAAQ,iBAAU;IAKpD,YACI,QAAiC,EAC1B,KAAY,EACnB,MAAc,EACd,MAAuB,EAChB,sBAA6C;QAEpD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QALzB,UAAK,GAAL,KAAK,CAAO;QAGZ,2BAAsB,GAAtB,sBAAsB,CAAuB;QAGpD,IAAI,CAAC,SAAS,GAAG,IAAI,2CAAiC,EAAE,CAAC;QACzD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEkB,YAAY;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAExE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,SAAS;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE5F,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,aAAa;QAC5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,WAAW;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEO,qBAAqB,CAAC,IAA+B;QACzD,IAAI;YACA,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAE7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,WAAW,eAAe,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAC;YAE5H,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACvD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAEnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,wBAAwB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;SAC7F;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,OAAO,GAAG,qEAAqE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC1G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACrC;IACL,CAAC;CACJ;AAvDD,4DAuDC"}
|
|
@@ -1,7 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import { Meter } from "@opentelemetry/api";
|
|
2
|
+
import { InstanceReadyHandler, TelemetryMetricSettings } from "../types";
|
|
3
|
+
import { TelemetryLogger } from "../../types";
|
|
4
|
+
import { MetricBase } from "../base/base";
|
|
5
|
+
export declare class ApplicationStartupHistogramMetric extends MetricBase {
|
|
6
|
+
private meter;
|
|
7
|
+
instanceReadyHandler: InstanceReadyHandler;
|
|
8
|
+
private instanceReadyUn;
|
|
9
|
+
private validator;
|
|
4
10
|
private appStartupMetric;
|
|
5
|
-
|
|
6
|
-
protected
|
|
11
|
+
constructor(settings: TelemetryMetricSettings, meter: Meter, userId: string, logger: TelemetryLogger, instanceReadyHandler: InstanceReadyHandler);
|
|
12
|
+
protected createMetric(): Promise<void>;
|
|
13
|
+
protected subscribe(): Promise<void>;
|
|
14
|
+
protected unsubscribe(): Promise<void>;
|
|
15
|
+
protected destroyMetric(): Promise<void>;
|
|
16
|
+
private handleInstanceReady;
|
|
7
17
|
}
|
|
@@ -1,18 +1,45 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ApplicationStartupHistogramMetric = void 0;
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
const startupHistogram_1 = require("../../validation/metrics/application/startupHistogram");
|
|
5
|
+
const base_1 = require("../base/base");
|
|
6
|
+
class ApplicationStartupHistogramMetric extends base_1.MetricBase {
|
|
7
|
+
constructor(settings, meter, userId, logger, instanceReadyHandler) {
|
|
8
|
+
super(settings, userId, logger);
|
|
9
|
+
this.meter = meter;
|
|
10
|
+
this.instanceReadyHandler = instanceReadyHandler;
|
|
11
|
+
this.validator = new startupHistogram_1.ApplicationStartupHistogramMetricValidator();
|
|
12
|
+
this.validator.validate(this);
|
|
13
|
+
}
|
|
14
|
+
createMetric() {
|
|
7
15
|
const advice = { explicitBucketBoundaries: this.settings.buckets };
|
|
8
16
|
this.appStartupMetric = this.meter.createHistogram(this.settings.name, { description: this.settings.description, unit: this.settings.unit, advice });
|
|
9
17
|
return Promise.resolve();
|
|
10
18
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
19
|
+
subscribe() {
|
|
20
|
+
this.instanceReadyUn = this.instanceReadyHandler(this.handleInstanceReady.bind(this));
|
|
21
|
+
return Promise.resolve();
|
|
22
|
+
}
|
|
23
|
+
unsubscribe() {
|
|
24
|
+
this.instanceReadyUn();
|
|
25
|
+
return Promise.resolve();
|
|
26
|
+
}
|
|
27
|
+
destroyMetric() {
|
|
28
|
+
return Promise.resolve();
|
|
29
|
+
}
|
|
30
|
+
handleInstanceReady(args) {
|
|
31
|
+
try {
|
|
32
|
+
this.validator.validateInstanceReady(args);
|
|
33
|
+
this.logger.debug(`instance ready for application ${args.application} and metric ${this.settings.name} is being invoked`);
|
|
34
|
+
const startupTime = args.endTime.getTime() - args.startTime.getTime();
|
|
35
|
+
const data = Object.assign({ api: args.api }, this.getApplicationData(args.application));
|
|
36
|
+
this.appStartupMetric.record(startupTime, data);
|
|
37
|
+
this.logger.debug(`start up time ${startupTime} has been added for metric ${this.settings.name}`);
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
const message = `error while executing handleInstanceReady for metric from type: ${this.settings.type}`;
|
|
41
|
+
this.logger.error(message, error);
|
|
42
|
+
}
|
|
16
43
|
}
|
|
17
44
|
}
|
|
18
45
|
exports.ApplicationStartupHistogramMetric = ApplicationStartupHistogramMetric;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startupHistogram.js","sourceRoot":"","sources":["../../../src/metrics/application/startupHistogram.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"startupHistogram.js","sourceRoot":"","sources":["../../../src/metrics/application/startupHistogram.ts"],"names":[],"mappings":";;;AAGA,4FAAmH;AACnH,uCAA0C;AAE1C,MAAa,iCAAkC,SAAQ,iBAAU;IAK7D,YACI,QAAiC,EACzB,KAAY,EACpB,MAAc,EACd,MAAuB,EAChB,oBAA0C;QAEjD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QALxB,UAAK,GAAL,KAAK,CAAO;QAGb,yBAAoB,GAApB,oBAAoB,CAAsB;QAIjD,IAAI,CAAC,SAAS,GAAG,IAAI,6DAA0C,EAAE,CAAC;QAClE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEkB,YAAY;QAC3B,MAAM,MAAM,GAAG,EAAE,wBAAwB,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACnE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAErJ,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,SAAS;QACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,WAAW;QAC1B,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,aAAa;QAC5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEO,mBAAmB,CAAC,IAA8B;QACtD,IAAI;YACA,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAE3C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,IAAI,CAAC,WAAW,eAAe,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAC;YAE1H,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACtE,MAAM,IAAI,mBAAK,GAAG,EAAE,IAAI,CAAC,GAAG,IAAK,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAE,CAAC;YAC7E,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,WAAW,8BAA8B,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;SACrG;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,OAAO,GAAG,mEAAmE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACrC;IACL,CAAC;CACJ;AAvDD,8EAuDC"}
|
|
@@ -32,7 +32,7 @@ class ApplicationStoppedMetric extends base_1.MetricBase {
|
|
|
32
32
|
try {
|
|
33
33
|
this.validator.validateInstanceStopped(args);
|
|
34
34
|
this.logger.debug(`instance stopped for application ${args.application} and metric ${this.settings.name} is being invoked`);
|
|
35
|
-
const data = this.
|
|
35
|
+
const data = this.getApplicationData(args.application);
|
|
36
36
|
this.appStoppedMetric.add(1, data);
|
|
37
37
|
this.logger.debug(`metric ${this.settings.name} sent 1 more for app ${data.application}`);
|
|
38
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stopped.js","sourceRoot":"","sources":["../../../src/metrics/application/stopped.ts"],"names":[],"mappings":";;;AAGA,uCAA0C;AAC1C,0EAAiG;AAEjG,MAAa,wBAAyB,SAAQ,iBAAU;IAKpD,YACI,QAAiC,EAC1B,KAAY,EACnB,MAAc,EACd,MAAuB,EAChB,sBAA6C;QAEpD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QALzB,UAAK,GAAL,KAAK,CAAO;QAGZ,2BAAsB,GAAtB,sBAAsB,CAAuB;QAGpD,IAAI,CAAC,SAAS,GAAG,IAAI,2CAAiC,EAAE,CAAC;QACzD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEkB,YAAY;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAExE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,SAAS;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE5F,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,WAAW;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,aAAa;QAC5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEO,qBAAqB,CAAC,IAA+B;QACzD,IAAI;YACA,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAE7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,WAAW,eAAe,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAC;YAE5H,MAAM,IAAI,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"stopped.js","sourceRoot":"","sources":["../../../src/metrics/application/stopped.ts"],"names":[],"mappings":";;;AAGA,uCAA0C;AAC1C,0EAAiG;AAEjG,MAAa,wBAAyB,SAAQ,iBAAU;IAKpD,YACI,QAAiC,EAC1B,KAAY,EACnB,MAAc,EACd,MAAuB,EAChB,sBAA6C;QAEpD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QALzB,UAAK,GAAL,KAAK,CAAO;QAGZ,2BAAsB,GAAtB,sBAAsB,CAAuB;QAGpD,IAAI,CAAC,SAAS,GAAG,IAAI,2CAAiC,EAAE,CAAC;QACzD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEkB,YAAY;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC9C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QAExE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,SAAS;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE5F,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,WAAW;QAC1B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,aAAa;QAC5B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEO,qBAAqB,CAAC,IAA+B;QACzD,IAAI;YACA,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAE7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,WAAW,eAAe,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAC;YAE5H,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACvD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAEnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,wBAAwB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;SAC7F;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,OAAO,GAAG,qEAAqE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC1G,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACrC;IACL,CAAC;CACJ;AAxDD,4DAwDC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TelemetryMetricData, TelemetryMetric, TelemetryMetricSettings } from "../types";
|
|
2
1
|
import { TelemetryLogger } from "../../types";
|
|
2
|
+
import { TelemetryMetricApplicationData, TelemetryMetric, TelemetryMetricSettings, TelemetryMetricLayoutData, TelemetryMetricData } from "../types";
|
|
3
3
|
export declare abstract class MetricBase implements TelemetryMetric {
|
|
4
4
|
settings: TelemetryMetricSettings;
|
|
5
5
|
userId: string;
|
|
@@ -12,5 +12,7 @@ export declare abstract class MetricBase implements TelemetryMetric {
|
|
|
12
12
|
protected abstract subscribe(): Promise<void>;
|
|
13
13
|
protected abstract unsubscribe(): Promise<void>;
|
|
14
14
|
protected abstract destroyMetric(): Promise<void>;
|
|
15
|
-
protected getData(
|
|
15
|
+
protected getData(): TelemetryMetricData;
|
|
16
|
+
protected getApplicationData(application: string): TelemetryMetricApplicationData;
|
|
17
|
+
protected getLayoutData(layout: string): TelemetryMetricLayoutData;
|
|
16
18
|
}
|
|
@@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.MetricBase = void 0;
|
|
13
|
-
const validator_1 = require("../../utils/validator");
|
|
14
13
|
const base_1 = require("../../validation/metrics/base/base");
|
|
15
14
|
class MetricBase {
|
|
16
15
|
constructor(settings, userId, logger) {
|
|
@@ -53,13 +52,24 @@ class MetricBase {
|
|
|
53
52
|
return Promise.resolve();
|
|
54
53
|
});
|
|
55
54
|
}
|
|
56
|
-
getData(
|
|
55
|
+
getData() {
|
|
57
56
|
const data = {
|
|
58
57
|
user: this.userId
|
|
59
58
|
};
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
59
|
+
return data;
|
|
60
|
+
}
|
|
61
|
+
getApplicationData(application) {
|
|
62
|
+
const data = {
|
|
63
|
+
user: this.userId,
|
|
64
|
+
application
|
|
65
|
+
};
|
|
66
|
+
return data;
|
|
67
|
+
}
|
|
68
|
+
getLayoutData(layout) {
|
|
69
|
+
const data = {
|
|
70
|
+
user: this.userId,
|
|
71
|
+
layout
|
|
72
|
+
};
|
|
63
73
|
return data;
|
|
64
74
|
}
|
|
65
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/metrics/base/base.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/metrics/base/base.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,6DAAyE;AASzE,MAAsB,UAAU;IAG5B,YACW,QAAiC,EACjC,MAAc,EACd,MAAuB;QAFvB,aAAQ,GAAR,QAAQ,CAAyB;QACjC,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAiB;QAL3B,YAAO,GAAY,KAAK,CAAC;QAO5B,MAAM,SAAS,GAAG,IAAI,0BAAmB,EAAE,CAAC;QAC5C,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEY,KAAK;;YACd,IAAI;gBACA,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAC;gBAEnE,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,iBAAiB,CAAC,CAAC;gBAEjE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;aACvB;YAAC,OAAO,KAAK,EAAE;gBACZ,MAAM,OAAO,GAAG,8DAA8D,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;aACrC;YACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;KAAA;IAEY,IAAI;;YACb,IAAI;gBACA,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBACzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB,CAAC,CAAC;gBAEnE,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,IAAI,qBAAqB,CAAC,CAAC;gBAErE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACxB;YAAC,OAAO,KAAK,EAAE;gBACZ,MAAM,OAAO,GAAG,gEAAgE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACrG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;aACrC;YACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;KAAA;IAQS,OAAO;QACb,MAAM,IAAI,GAAwB;YAC9B,IAAI,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,kBAAkB,CAAC,WAAmB;QAC5C,MAAM,IAAI,GAAmC;YACzC,IAAI,EAAE,IAAI,CAAC,MAAM;YACjB,WAAW;SACd,CAAC;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,aAAa,CAAC,MAAc;QAClC,MAAM,IAAI,GAA8B;YACpC,IAAI,EAAE,IAAI,CAAC,MAAM;YACjB,MAAM;SACT,CAAC;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAxED,gCAwEC"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { Meter, Observable, ObservableCallback, ObservableResult } from "@opentelemetry/api";
|
|
2
|
-
import {
|
|
1
|
+
import { Attributes, Meter, Observable, ObservableCallback, ObservableResult } from "@opentelemetry/api";
|
|
2
|
+
import { TelemetryMetricSettings } from "../types";
|
|
3
3
|
import { TelemetryLogger } from "../../types";
|
|
4
4
|
import { MetricBase } from "./base";
|
|
5
|
-
export declare abstract class GaugeMetricBase extends MetricBase {
|
|
5
|
+
export declare abstract class GaugeMetricBase<TData extends Attributes> extends MetricBase {
|
|
6
6
|
meter: Meter;
|
|
7
|
-
protected metric: Observable<
|
|
8
|
-
protected observableCallback: ObservableCallback<
|
|
7
|
+
protected metric: Observable<TData>;
|
|
8
|
+
protected observableCallback: ObservableCallback<TData>;
|
|
9
9
|
constructor(settings: TelemetryMetricSettings, meter: Meter, userId: string, logger: TelemetryLogger);
|
|
10
10
|
protected createMetric(): Promise<void>;
|
|
11
11
|
protected subscribe(): Promise<void>;
|
|
12
12
|
protected destroyMetric(): Promise<void>;
|
|
13
13
|
protected unsubscribe(): Promise<void>;
|
|
14
|
-
protected observe(result: ObservableResult<
|
|
14
|
+
protected observe(result: ObservableResult<TData>): Promise<void>;
|
|
15
15
|
protected abstract subscribeCore(): Promise<void>;
|
|
16
|
-
protected abstract observeCore(result: ObservableResult<
|
|
16
|
+
protected abstract observeCore(result: ObservableResult<TData>): Promise<void>;
|
|
17
17
|
protected abstract unsubscribeCore(): Promise<void>;
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gauge.js","sourceRoot":"","sources":["../../../src/metrics/base/gauge.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,iCAAoC;AACpC,+DAA+E;AAE/E,MAAsB,
|
|
1
|
+
{"version":3,"file":"gauge.js","sourceRoot":"","sources":["../../../src/metrics/base/gauge.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,iCAAoC;AACpC,+DAA+E;AAE/E,MAAsB,eAA0C,SAAQ,iBAAU;IAI9E,YACI,QAAiC,EAC1B,KAAY,EACnB,MAAc,EACd,MAAuB;QAEvB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAJzB,UAAK,GAAL,KAAK,CAAO;QAKnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,MAAM,SAAS,GAAG,IAAI,gCAAwB,EAAE,CAAC;QACjD,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEwB,YAAY;;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAChC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAEhC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YAE5E,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;KAAA;IAEwB,SAAS;;YAC9B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAEjD,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC;KAAA;IAEkB,aAAa;QAC5B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,WAAW;QAC1B,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAClC,CAAC;IAEe,OAAO,CAAC,MAA+B;;YACnD,IAAI;gBACA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gBAErF,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAE/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC,CAAC;aAC7E;YAAC,OAAO,KAAK,EAAE;gBACZ,MAAM,OAAO,GAAG,uDAAuD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC5F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;aACrC;QACL,CAAC;KAAA;CAKJ;AA3DD,0CA2DC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Meter, Observable, ObservableCallback } from "@opentelemetry/api";
|
|
1
|
+
import { Attributes, Meter, Observable, ObservableCallback } from "@opentelemetry/api";
|
|
2
2
|
import { MetricBase } from "./base";
|
|
3
|
-
import {
|
|
3
|
+
import { TelemetryMetricSettings } from "../types";
|
|
4
4
|
import { TelemetryLogger } from "../../types";
|
|
5
|
-
export declare abstract class ObservableMetricBase extends MetricBase {
|
|
5
|
+
export declare abstract class ObservableMetricBase<TData extends Attributes> extends MetricBase {
|
|
6
6
|
meter: Meter;
|
|
7
|
-
protected metric: Observable<
|
|
8
|
-
protected observableCallback: ObservableCallback<
|
|
7
|
+
protected metric: Observable<TData>;
|
|
8
|
+
protected observableCallback: ObservableCallback<TData>;
|
|
9
9
|
constructor(settings: TelemetryMetricSettings, meter: Meter, userId: string, logger: TelemetryLogger);
|
|
10
10
|
protected createMetric(): Promise<void>;
|
|
11
11
|
protected subscribe(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observable.js","sourceRoot":"","sources":["../../../src/metrics/base/observable.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iCAAoC;AAGpC,+DAA+E;AAE/E,MAAsB,
|
|
1
|
+
{"version":3,"file":"observable.js","sourceRoot":"","sources":["../../../src/metrics/base/observable.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iCAAoC;AAGpC,+DAA+E;AAE/E,MAAsB,oBAA+C,SAAQ,iBAAU;IAInF,YACI,QAAiC,EAC1B,KAAY,EACnB,MAAc,EACd,MAAuB;QAEvB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAJzB,UAAK,GAAL,KAAK,CAAO;QAKnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,MAAM,SAAS,GAAG,IAAI,gCAAwB,EAAE,CAAC;QACjD,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEe,YAAY;;YACxB,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;YAE1D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,SAAS,mBAAmB,CAAC,CAAC;YAE1E,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAClC,CAAC;KAAA;IAEwB,SAAS;;YAC9B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAEjD,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC/B,CAAC;KAAA;IAEkB,aAAa;QAC5B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEkB,WAAW;QAC1B,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAClC,CAAC;IAEe,OAAO;;YACnB,IAAI;gBACA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gBAErF,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBAEzB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,IAAI,CAAC,QAAQ,CAAC,IAAI,oBAAoB,CAAC,CAAC;aAC7E;YAAC,OAAO,KAAK,EAAE;gBACZ,MAAM,OAAO,GAAG,uDAAuD,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC5F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;aACrC;QACL,CAAC;KAAA;IAOO,gBAAgB,CAAC,MAAc;QACnC,MAAM,KAAK,GAAG,sDAAsD,CAAC;QACrE,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACpC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAtED,oDAsEC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { InstanceActionHandler, InstanceFocusedHandler, InstanceReadyHandler, LayoutRestoredHandler, PerformanceProvider, PlatformStartedHandler, TelemetryMetricsDependencyContainer } from "./types";
|
|
1
|
+
import { InstanceActionHandler, InstanceFocusedHandler, InstanceReadyHandler, LayoutRestoredHandler, PerformanceProvider, PlatformStartedHandler, TelemetryMetricsDependencyContainer, WorkspaceActionHandler } from "./types";
|
|
2
2
|
export declare class MetricsDependencyBuilder {
|
|
3
3
|
private performanceProvider;
|
|
4
4
|
private instanceStartedHandler;
|
|
@@ -6,6 +6,8 @@ export declare class MetricsDependencyBuilder {
|
|
|
6
6
|
private instanceReadyHandler;
|
|
7
7
|
private instanceFocusedHandler;
|
|
8
8
|
private layoutRestoredHandler;
|
|
9
|
+
private workspaceRestoredHandler;
|
|
10
|
+
private workspaceStoppedHandler;
|
|
9
11
|
private platformStartedHandler;
|
|
10
12
|
constructor();
|
|
11
13
|
build(): TelemetryMetricsDependencyContainer;
|
|
@@ -14,6 +16,8 @@ export declare class MetricsDependencyBuilder {
|
|
|
14
16
|
withInstanceReadyHandler(instanceReadyHandler: InstanceReadyHandler): this;
|
|
15
17
|
withInstanceFocusedHandler(instanceFocusedHandler: InstanceFocusedHandler): this;
|
|
16
18
|
withLayoutRestoredHandler(layoutRestoredHandler: LayoutRestoredHandler): this;
|
|
19
|
+
withWorkspaceRestoredHandler(workspaceRestoredHandler: LayoutRestoredHandler): this;
|
|
20
|
+
withWorkspaceStoppedHandler(workspaceStoppedHandler: WorkspaceActionHandler): this;
|
|
17
21
|
withPlatformStartedHandler(platformStartedHandler: PlatformStartedHandler): this;
|
|
18
22
|
withPerfProvider(perfProvider: PerformanceProvider): this;
|
|
19
23
|
}
|