@interopio/insights-metrics 0.0.188 → 0.1.0

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.
Files changed (169) hide show
  1. package/dist/constants.d.ts +27 -27
  2. package/dist/constants.js +30 -30
  3. package/dist/factory/builder.d.ts +34 -34
  4. package/dist/factory/builder.js +296 -296
  5. package/dist/factory/factory.d.ts +10 -10
  6. package/dist/factory/factory.js +82 -82
  7. package/dist/factory/factory.js.map +1 -1
  8. package/dist/index.d.ts +5 -5
  9. package/dist/index.js +47 -47
  10. package/dist/index.js.map +1 -1
  11. package/dist/manager.d.ts +26 -26
  12. package/dist/manager.js +165 -167
  13. package/dist/manager.js.map +1 -1
  14. package/dist/meter/lazyProvider.d.ts +15 -15
  15. package/dist/meter/lazyProvider.js +35 -35
  16. package/dist/meter/lazyProvider.js.map +1 -1
  17. package/dist/meter/providerFactory.d.ts +6 -6
  18. package/dist/meter/providerFactory.js +47 -47
  19. package/dist/meter/providerFactory.js.map +1 -1
  20. package/dist/metrics/application/count.d.ts +19 -19
  21. package/dist/metrics/application/count.js +68 -68
  22. package/dist/metrics/application/count.js.map +1 -1
  23. package/dist/metrics/application/cpu.d.ts +10 -10
  24. package/dist/metrics/application/cpu.js +47 -47
  25. package/dist/metrics/application/cpu.js.map +1 -1
  26. package/dist/metrics/application/crash.d.ts +16 -16
  27. package/dist/metrics/application/crash.js +48 -48
  28. package/dist/metrics/application/crash.js.map +1 -1
  29. package/dist/metrics/application/duration.d.ts +25 -25
  30. package/dist/metrics/application/duration.js +104 -104
  31. package/dist/metrics/application/duration.js.map +1 -1
  32. package/dist/metrics/application/durationSoft.d.ts +4 -4
  33. package/dist/metrics/application/durationSoft.js +33 -33
  34. package/dist/metrics/application/durationSoft.js.map +1 -1
  35. package/dist/metrics/application/error.d.ts +16 -16
  36. package/dist/metrics/application/error.js +48 -48
  37. package/dist/metrics/application/error.js.map +1 -1
  38. package/dist/metrics/application/memory.d.ts +11 -11
  39. package/dist/metrics/application/memory.js +49 -49
  40. package/dist/metrics/application/memory.js.map +1 -1
  41. package/dist/metrics/application/started.d.ts +16 -16
  42. package/dist/metrics/application/started.js +48 -48
  43. package/dist/metrics/application/started.js.map +1 -1
  44. package/dist/metrics/application/startup.d.ts +16 -16
  45. package/dist/metrics/application/startup.js +49 -49
  46. package/dist/metrics/application/startup.js.map +1 -1
  47. package/dist/metrics/application/stopped.d.ts +16 -16
  48. package/dist/metrics/application/stopped.js +48 -48
  49. package/dist/metrics/application/stopped.js.map +1 -1
  50. package/dist/metrics/base/base.d.ts +28 -28
  51. package/dist/metrics/base/base.js +181 -180
  52. package/dist/metrics/base/base.js.map +1 -1
  53. package/dist/metrics/base/observable.d.ts +19 -19
  54. package/dist/metrics/base/observable.js +88 -88
  55. package/dist/metrics/base/observable.js.map +1 -1
  56. package/dist/metrics/base/observableGauge.d.ts +6 -6
  57. package/dist/metrics/base/observableGauge.js +11 -11
  58. package/dist/metrics/base/zeroOutClosedAppObservableGaugeMetricBase.d.ts +12 -12
  59. package/dist/metrics/base/zeroOutClosedAppObservableGaugeMetricBase.js +38 -38
  60. package/dist/metrics/base/zeroOutClosedAppObservableGaugeMetricBase.js.map +1 -1
  61. package/dist/metrics/custom/customCounter.d.ts +10 -10
  62. package/dist/metrics/custom/customCounter.js +23 -23
  63. package/dist/metrics/custom/customCounter.js.map +1 -1
  64. package/dist/metrics/custom/customGauge.d.ts +10 -10
  65. package/dist/metrics/custom/customGauge.js +23 -23
  66. package/dist/metrics/custom/customGauge.js.map +1 -1
  67. package/dist/metrics/custom/customHistogram.d.ts +10 -10
  68. package/dist/metrics/custom/customHistogram.js +23 -23
  69. package/dist/metrics/custom/customHistogram.js.map +1 -1
  70. package/dist/metrics/custom/customObservableCounter.d.ts +6 -6
  71. package/dist/metrics/custom/customObservableCounter.js +12 -12
  72. package/dist/metrics/custom/customObservableGauge.d.ts +6 -6
  73. package/dist/metrics/custom/customObservableGauge.js +12 -12
  74. package/dist/metrics/custom/customObservableUpDownCounter.d.ts +6 -6
  75. package/dist/metrics/custom/customObservableUpDownCounter.js +12 -12
  76. package/dist/metrics/custom/customUpDownCounter.d.ts +10 -10
  77. package/dist/metrics/custom/customUpDownCounter.js +23 -23
  78. package/dist/metrics/custom/customUpDownCounter.js.map +1 -1
  79. package/dist/metrics/layout/startup.d.ts +15 -15
  80. package/dist/metrics/layout/startup.js +46 -46
  81. package/dist/metrics/layout/startup.js.map +1 -1
  82. package/dist/metrics/platform/error.d.ts +15 -15
  83. package/dist/metrics/platform/error.js +46 -46
  84. package/dist/metrics/platform/error.js.map +1 -1
  85. package/dist/metrics/platform/startup.d.ts +16 -16
  86. package/dist/metrics/platform/startup.js +46 -46
  87. package/dist/metrics/platform/startup.js.map +1 -1
  88. package/dist/metrics/system/cpu.d.ts +10 -10
  89. package/dist/metrics/system/cpu.js +49 -49
  90. package/dist/metrics/system/cpu.js.map +1 -1
  91. package/dist/metrics/system/memory.d.ts +10 -10
  92. package/dist/metrics/system/memory.js +50 -50
  93. package/dist/metrics/system/memory.js.map +1 -1
  94. package/dist/metrics/workspace/count.d.ts +23 -23
  95. package/dist/metrics/workspace/count.js +93 -93
  96. package/dist/metrics/workspace/count.js.map +1 -1
  97. package/dist/metrics/workspace/selected.d.ts +14 -14
  98. package/dist/metrics/workspace/selected.js +46 -46
  99. package/dist/metrics/workspace/selected.js.map +1 -1
  100. package/dist/metrics/workspace/started.d.ts +17 -17
  101. package/dist/metrics/workspace/started.js +48 -48
  102. package/dist/metrics/workspace/started.js.map +1 -1
  103. package/dist/metrics/workspace/startupLegacy.d.ts +8 -8
  104. package/dist/metrics/workspace/startupLegacy.js +19 -19
  105. package/dist/metrics/workspace/stopped.d.ts +15 -15
  106. package/dist/metrics/workspace/stopped.js +45 -45
  107. package/dist/metrics/workspace/stopped.js.map +1 -1
  108. package/dist/metrics/workspace/timedGauge.d.ts +14 -14
  109. package/dist/metrics/workspace/timedGauge.js +53 -53
  110. package/dist/metrics/workspace/timedGauge.js.map +1 -1
  111. package/dist/settings/builder.d.ts +26 -26
  112. package/dist/settings/builder.js +141 -141
  113. package/dist/settings/builder.js.map +1 -1
  114. package/dist/settings/default.d.ts +41 -41
  115. package/dist/settings/default.js +179 -179
  116. package/dist/settings/default.js.map +1 -1
  117. package/dist/utils.d.ts +2 -2
  118. package/dist/utils.js +49 -50
  119. package/dist/utils.js.map +1 -1
  120. package/dist/validation/builder.d.ts +4 -4
  121. package/dist/validation/builder.js +11 -11
  122. package/dist/validation/container.d.ts +4 -4
  123. package/dist/validation/container.js +13 -13
  124. package/dist/validation/metrics/application/count.d.ts +7 -7
  125. package/dist/validation/metrics/application/count.js +20 -20
  126. package/dist/validation/metrics/application/duration.d.ts +6 -6
  127. package/dist/validation/metrics/application/duration.js +16 -16
  128. package/dist/validation/metrics/application/error.d.ts +6 -6
  129. package/dist/validation/metrics/application/error.js +15 -15
  130. package/dist/validation/metrics/application/started.d.ts +6 -6
  131. package/dist/validation/metrics/application/started.js +15 -15
  132. package/dist/validation/metrics/application/startupHistogram.d.ts +6 -6
  133. package/dist/validation/metrics/application/startupHistogram.js +17 -17
  134. package/dist/validation/metrics/application/stopped.d.ts +6 -6
  135. package/dist/validation/metrics/application/stopped.js +15 -15
  136. package/dist/validation/metrics/base/base.d.ts +5 -5
  137. package/dist/validation/metrics/base/base.js +21 -21
  138. package/dist/validation/metrics/base/gauge.d.ts +5 -5
  139. package/dist/validation/metrics/base/gauge.js +11 -11
  140. package/dist/validation/metrics/builder.d.ts +2 -2
  141. package/dist/validation/metrics/builder.js +6 -6
  142. package/dist/validation/metrics/factory.d.ts +4 -4
  143. package/dist/validation/metrics/factory.js +12 -12
  144. package/dist/validation/metrics/factoryBuilder.d.ts +5 -5
  145. package/dist/validation/metrics/factoryBuilder.js +22 -22
  146. package/dist/validation/metrics/layout/startupHistogram.d.ts +6 -6
  147. package/dist/validation/metrics/layout/startupHistogram.js +17 -17
  148. package/dist/validation/metrics/manager.d.ts +4 -4
  149. package/dist/validation/metrics/manager.js +14 -14
  150. package/dist/validation/metrics/meterFactory.d.ts +2 -2
  151. package/dist/validation/metrics/meterFactory.js +7 -7
  152. package/dist/validation/metrics/perf.d.ts +8 -8
  153. package/dist/validation/metrics/perf.js +40 -40
  154. package/dist/validation/metrics/platform/crash.d.ts +6 -6
  155. package/dist/validation/metrics/platform/crash.js +15 -15
  156. package/dist/validation/metrics/platform/error.d.ts +6 -6
  157. package/dist/validation/metrics/platform/error.js +14 -14
  158. package/dist/validation/metrics/platform/startup.d.ts +6 -6
  159. package/dist/validation/metrics/platform/startup.js +17 -17
  160. package/dist/validation/metrics/settingsBuilder.d.ts +4 -4
  161. package/dist/validation/metrics/settingsBuilder.js +25 -25
  162. package/dist/validation/metrics/workspace/count.d.ts +8 -8
  163. package/dist/validation/metrics/workspace/count.js +24 -24
  164. package/dist/validation/metrics/workspace/startedOrStoppedMetric.d.ts +8 -8
  165. package/dist/validation/metrics/workspace/startedOrStoppedMetric.js +18 -18
  166. package/dist/validation/validator.d.ts +4 -4
  167. package/dist/validation/validator.js +14 -14
  168. package/dist/validation/validator.js.map +1 -1
  169. package/package.json +17 -15
@@ -1,181 +1,182 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.MetricBase = void 0;
13
- const base_1 = require("../../validation/metrics/base/base");
14
- const otel_1 = require("@interopio/otel");
15
- const utils_1 = require("../../utils");
16
- class MetricBase {
17
- constructor(settings, meter, logger, generalSettings, defaultFilters) {
18
- var _a, _b;
19
- this.settings = settings;
20
- this.meter = meter;
21
- this.logger = logger;
22
- this.generalSettings = generalSettings;
23
- this.started = false;
24
- const validator = new base_1.MetricBaseValidator();
25
- validator.validate(this);
26
- this.filters = (_a = generalSettings === null || generalSettings === void 0 ? void 0 : generalSettings.filters) !== null && _a !== void 0 ? _a : [];
27
- this.defaultFilters = ((_b = generalSettings === null || generalSettings === void 0 ? void 0 : generalSettings.useDefaultFilters) !== null && _b !== void 0 ? _b : true) ? (defaultFilters !== null && defaultFilters !== void 0 ? defaultFilters : []) : [];
28
- }
29
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
30
- getFilter(args) {
31
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
32
- // G4E-9759
33
- const filter = ((_b = (_a = this.filters) === null || _a === void 0 ? void 0 : _a.filter(x => x.overrideDefaultFilters)) !== null && _b !== void 0 ? _b : [])
34
- .concat(((_c = this.defaultFilters) !== null && _c !== void 0 ? _c : [])
35
- .map(x => { var _a; return (Object.assign(Object.assign({}, x), { type: this.settings.type, name: (_a = this.settings.name) !== null && _a !== void 0 ? _a : this.settings.type })); }))
36
- .concat((_e = (_d = this.filters) === null || _d === void 0 ? void 0 : _d.filter(x => !x.overrideDefaultFilters)) !== null && _e !== void 0 ? _e : [])
37
- .find(x => {
38
- var _a, _b, _c;
39
- if (!this.matchStringOrRegex(this.settings.type, x.type)) {
40
- return false;
41
- }
42
- if (!this.matchStringOrRegex((_a = this.settings.name) !== null && _a !== void 0 ? _a : this.settings.type, x.name)) {
43
- return false;
44
- }
45
- for (const prop of Object.keys((_b = x === null || x === void 0 ? void 0 : x.attributes) !== null && _b !== void 0 ? _b : {})) {
46
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
47
- if (args[prop] !== ((_c = x === null || x === void 0 ? void 0 : x.attributes) !== null && _c !== void 0 ? _c : {})[prop]) {
48
- return false;
49
- }
50
- }
51
- return true;
52
- });
53
- if (filter) {
54
- // this.logger.debug("metric matches filter " + JSON.stringify(filter));
55
- }
56
- if ((filter === null || filter === void 0 ? void 0 : filter.enabled) === false) {
57
- // this.logger.debug("filter disables metric");
58
- }
59
- if ((filter === null || filter === void 0 ? void 0 : filter.enabled) === true) {
60
- // this.logger.debug("filter enables metric");
61
- }
62
- let enabled = (_f = filter === null || filter === void 0 ? void 0 : filter.enabled) !== null && _f !== void 0 ? _f : true;
63
- if ((filter === null || filter === void 0 ? void 0 : filter.enabled) !== false) {
64
- const sampleProbability = (_k = (_g = filter === null || filter === void 0 ? void 0 : filter.sample) !== null && _g !== void 0 ? _g : (_j = (_h = this.settings) === null || _h === void 0 ? void 0 : _h.publishingSettings) === null || _j === void 0 ? void 0 : _j.sample) !== null && _k !== void 0 ? _k : (_m = (_l = this.generalSettings) === null || _l === void 0 ? void 0 : _l.defaultPublishingSettings) === null || _m === void 0 ? void 0 : _m.sample;
65
- if (typeof sampleProbability !== "undefined") {
66
- enabled = sampleProbability === true || (sampleProbability !== false && Math.random() < sampleProbability);
67
- if (enabled) {
68
- // this.logger.debug("sampling metric");
69
- }
70
- else {
71
- // this.logger.debug("not sampling metric");
72
- }
73
- }
74
- }
75
- return Object.assign(Object.assign({}, filter), { enabled, type: this.settings.type, name: (_o = this.settings.name) !== null && _o !== void 0 ? _o : this.settings.type });
76
- }
77
- start() {
78
- return __awaiter(this, void 0, void 0, function* () {
79
- try {
80
- yield this.createMetric();
81
- // this.logger.debug(`metric ${this.settings.name} has been created`);
82
- yield this.subscribe();
83
- // this.logger.debug(`metric ${this.settings.name} has subscribed`);
84
- this.started = true;
85
- }
86
- catch (error) {
87
- const message = `error while starting and subscribing for metric from type: ${this.settings.type}`;
88
- // this.logger.warn(message, error);
89
- }
90
- return Promise.resolve();
91
- });
92
- }
93
- stop() {
94
- return __awaiter(this, void 0, void 0, function* () {
95
- try {
96
- yield this.unsubscribe();
97
- // this.logger.debug(`metric ${this.settings.name} has unsubscribed`);
98
- yield this.destroyMetric();
99
- // this.logger.debug(`metric ${this.settings.name} has been destroyed`);
100
- this.started = false;
101
- }
102
- catch (error) {
103
- const message = `error while stopping and unsubscribing for metric from type: ${this.settings.type}`;
104
- // this.logger.warn(message, error);
105
- }
106
- return Promise.resolve();
107
- });
108
- }
109
- createMetric() {
110
- const name = this.settings.name || (this.settings.type + "-" + this.createUniqueName(10));
111
- const description = this.settings.description;
112
- const unit = this.settings.unit;
113
- const advice = { explicitBucketBoundaries: this.settings.buckets };
114
- this.metricAny = this.createMetricCore(name, { description, unit, advice });
115
- return Promise.resolve();
116
- }
117
- createRecordingMetric(name,
118
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
119
- baseSettings, defaultBaseMetricType) {
120
- var _a;
121
- if (((_a = this.settings.baseMetricType) !== null && _a !== void 0 ? _a : defaultBaseMetricType) === "histogram") {
122
- return this.meter.createHistogram(name, baseSettings);
123
- }
124
- else {
125
- return this.meter.createGauge(name, baseSettings);
126
- }
127
- }
128
- subscribe() { return Promise.resolve(); }
129
- unsubscribe() { return Promise.resolve(); }
130
- destroyMetric() { return Promise.resolve(); }
131
- getData() {
132
- const data = Object.assign({ platformVersion: this.settings.platformVersion, user: this.settings.user }, otel_1.Container.errorless(this.settings.additionalAttributes));
133
- return data;
134
- }
135
- prePublish(data) {
136
- var _a, _b;
137
- if (!data) {
138
- return data;
139
- }
140
- const attributeSettings = Object.assign(Object.assign({}, (_a = this.generalSettings.defaultPublishingSettings) === null || _a === void 0 ? void 0 : _a.attributeSettings), (_b = this.settings.publishingSettings) === null || _b === void 0 ? void 0 : _b.attributeSettings);
141
- return (0, utils_1.reduceModality)(data, attributeSettings);
142
- }
143
- getApplicationData(application) {
144
- const data = Object.assign(Object.assign({}, this.getData()), { application });
145
- return data;
146
- }
147
- getLayoutData(layout) {
148
- const data = Object.assign(Object.assign({}, this.getData()), { layout });
149
- return data;
150
- }
151
- createUniqueName(length) {
152
- const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
153
- let result = "";
154
- const randomArray = new Uint8Array(length);
155
- crypto.getRandomValues(randomArray);
156
- randomArray.forEach((number) => {
157
- result += chars[number % chars.length];
158
- });
159
- return result;
160
- }
161
- matchStringOrRegex(match, matchWith) {
162
- if (!matchWith) {
163
- return true;
164
- }
165
- if (typeof matchWith === "string" && matchWith[0] === "#") {
166
- if (match === null ||
167
- match === undefined ||
168
- !new RegExp(matchWith.substring(1), "i").test(match + "")) {
169
- return false;
170
- }
171
- }
172
- else {
173
- if (match !== matchWith) {
174
- return false;
175
- }
176
- }
177
- return true;
178
- }
179
- }
180
- exports.MetricBase = MetricBase;
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MetricBase = void 0;
13
+ const base_1 = require("../../validation/metrics/base/base");
14
+ const otel_1 = require("@interopio/otel");
15
+ const utils_1 = require("../../utils");
16
+ class MetricBase {
17
+ constructor(settings, meter, logger, generalSettings, defaultFilters) {
18
+ var _a, _b;
19
+ this.settings = settings;
20
+ this.meter = meter;
21
+ this.logger = logger;
22
+ this.generalSettings = generalSettings;
23
+ this.started = false;
24
+ const validator = new base_1.MetricBaseValidator();
25
+ validator.validate(this);
26
+ this.filters = (_a = generalSettings === null || generalSettings === void 0 ? void 0 : generalSettings.filters) !== null && _a !== void 0 ? _a : [];
27
+ this.defaultFilters = ((_b = generalSettings === null || generalSettings === void 0 ? void 0 : generalSettings.useDefaultFilters) !== null && _b !== void 0 ? _b : true) ? (defaultFilters !== null && defaultFilters !== void 0 ? defaultFilters : []) : [];
28
+ }
29
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
30
+ getFilter(args) {
31
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
32
+ // G4E-9759
33
+ const filter = ((_b = (_a = this.filters) === null || _a === void 0 ? void 0 : _a.filter(x => x.overrideDefaultFilters)) !== null && _b !== void 0 ? _b : [])
34
+ .concat(((_c = this.defaultFilters) !== null && _c !== void 0 ? _c : [])
35
+ .map(x => { var _a; return (Object.assign(Object.assign({}, x), { type: this.settings.type, name: (_a = this.settings.name) !== null && _a !== void 0 ? _a : this.settings.type })); }))
36
+ .concat((_e = (_d = this.filters) === null || _d === void 0 ? void 0 : _d.filter(x => !x.overrideDefaultFilters)) !== null && _e !== void 0 ? _e : [])
37
+ .find(x => {
38
+ var _a, _b, _c;
39
+ if (!this.matchStringOrRegex(this.settings.type, x.type)) {
40
+ return false;
41
+ }
42
+ if (!this.matchStringOrRegex((_a = this.settings.name) !== null && _a !== void 0 ? _a : this.settings.type, x.name)) {
43
+ return false;
44
+ }
45
+ for (const prop of Object.keys((_b = x === null || x === void 0 ? void 0 : x.attributes) !== null && _b !== void 0 ? _b : {})) {
46
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
47
+ if (args[prop] !== ((_c = x === null || x === void 0 ? void 0 : x.attributes) !== null && _c !== void 0 ? _c : {})[prop]) {
48
+ return false;
49
+ }
50
+ }
51
+ return true;
52
+ });
53
+ if (filter) {
54
+ // this.logger.debug("metric matches filter " + JSON.stringify(filter));
55
+ }
56
+ if ((filter === null || filter === void 0 ? void 0 : filter.enabled) === false) {
57
+ // this.logger.debug("filter disables metric");
58
+ }
59
+ if ((filter === null || filter === void 0 ? void 0 : filter.enabled) === true) {
60
+ // this.logger.debug("filter enables metric");
61
+ }
62
+ let enabled = (_f = filter === null || filter === void 0 ? void 0 : filter.enabled) !== null && _f !== void 0 ? _f : true;
63
+ if ((filter === null || filter === void 0 ? void 0 : filter.enabled) !== false) {
64
+ const sampleProbability = (_k = (_g = filter === null || filter === void 0 ? void 0 : filter.sample) !== null && _g !== void 0 ? _g : (_j = (_h = this.settings) === null || _h === void 0 ? void 0 : _h.publishingSettings) === null || _j === void 0 ? void 0 : _j.sample) !== null && _k !== void 0 ? _k : (_m = (_l = this.generalSettings) === null || _l === void 0 ? void 0 : _l.defaultPublishingSettings) === null || _m === void 0 ? void 0 : _m.sample;
65
+ if (typeof sampleProbability !== "undefined") {
66
+ enabled = sampleProbability === true || (sampleProbability !== false && Math.random() < sampleProbability);
67
+ if (enabled) {
68
+ // this.logger.debug("sampling metric");
69
+ }
70
+ else {
71
+ // this.logger.debug("not sampling metric");
72
+ }
73
+ }
74
+ }
75
+ return Object.assign(Object.assign({}, filter), { enabled, type: this.settings.type, name: (_o = this.settings.name) !== null && _o !== void 0 ? _o : this.settings.type });
76
+ }
77
+ start() {
78
+ return __awaiter(this, void 0, void 0, function* () {
79
+ try {
80
+ yield this.createMetric();
81
+ // this.logger.debug(`metric ${this.settings.name} has been created`);
82
+ yield this.subscribe();
83
+ // this.logger.debug(`metric ${this.settings.name} has subscribed`);
84
+ this.started = true;
85
+ }
86
+ catch (error) {
87
+ const message = `error while starting and subscribing for metric from type: ${this.settings.type}`;
88
+ // this.logger.warn(message, error);
89
+ }
90
+ return Promise.resolve();
91
+ });
92
+ }
93
+ stop() {
94
+ return __awaiter(this, void 0, void 0, function* () {
95
+ try {
96
+ yield this.unsubscribe();
97
+ // this.logger.debug(`metric ${this.settings.name} has unsubscribed`);
98
+ yield this.destroyMetric();
99
+ // this.logger.debug(`metric ${this.settings.name} has been destroyed`);
100
+ this.started = false;
101
+ }
102
+ catch (error) {
103
+ const message = `error while stopping and unsubscribing for metric from type: ${this.settings.type}`;
104
+ // this.logger.warn(message, error);
105
+ }
106
+ return Promise.resolve();
107
+ });
108
+ }
109
+ createMetric() {
110
+ const name = this.settings.name || (this.settings.type + "-" + this.createUniqueName(10));
111
+ const description = this.settings.description;
112
+ const unit = this.settings.unit;
113
+ const advice = { explicitBucketBoundaries: this.settings.buckets };
114
+ this.metricAny = this.createMetricCore(name, { description, unit, advice });
115
+ return Promise.resolve();
116
+ }
117
+ createRecordingMetric(name,
118
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
119
+ baseSettings, defaultBaseMetricType) {
120
+ var _a;
121
+ if (((_a = this.settings.baseMetricType) !== null && _a !== void 0 ? _a : defaultBaseMetricType) === "histogram") {
122
+ return this.meter.createHistogram(name, baseSettings);
123
+ }
124
+ else {
125
+ return this.meter.createGauge(name, baseSettings);
126
+ }
127
+ }
128
+ subscribe() { return Promise.resolve(); }
129
+ unsubscribe() { return Promise.resolve(); }
130
+ destroyMetric() { return Promise.resolve(); }
131
+ getData() {
132
+ const data = Object.assign({ platformVersion: this.settings.platformVersion, user: this.settings.user }, otel_1.Container.errorless(this.settings.additionalAttributes));
133
+ return data;
134
+ }
135
+ prePublish(data) {
136
+ var _a, _b, _c;
137
+ if (!data) {
138
+ return data;
139
+ }
140
+ const attributeSettings = Object.assign(Object.assign({}, (_a = this.generalSettings.defaultPublishingSettings) === null || _a === void 0 ? void 0 : _a.attributeSettings), (_b = this.settings.publishingSettings) === null || _b === void 0 ? void 0 : _b.attributeSettings);
141
+ const flattenedData = (0, otel_1.flattenOtelAtributes)(data, (_c = this.generalSettings.maxAttributeDepth) !== null && _c !== void 0 ? _c : 5);
142
+ return (0, utils_1.reduceModality)(flattenedData, attributeSettings);
143
+ }
144
+ getApplicationData(application) {
145
+ const data = Object.assign(Object.assign({}, this.getData()), { application });
146
+ return data;
147
+ }
148
+ getLayoutData(layout) {
149
+ const data = Object.assign(Object.assign({}, this.getData()), { layout });
150
+ return data;
151
+ }
152
+ createUniqueName(length) {
153
+ const chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
154
+ let result = "";
155
+ const randomArray = new Uint8Array(length);
156
+ crypto.getRandomValues(randomArray);
157
+ randomArray.forEach((number) => {
158
+ result += chars[number % chars.length];
159
+ });
160
+ return result;
161
+ }
162
+ matchStringOrRegex(match, matchWith) {
163
+ if (!matchWith) {
164
+ return true;
165
+ }
166
+ if (typeof matchWith === "string" && matchWith[0] === "#") {
167
+ if (match === null ||
168
+ match === undefined ||
169
+ !new RegExp(matchWith.substring(1), "i").test(match + "")) {
170
+ return false;
171
+ }
172
+ }
173
+ else {
174
+ if (match !== matchWith) {
175
+ return false;
176
+ }
177
+ }
178
+ return true;
179
+ }
180
+ }
181
+ exports.MetricBase = MetricBase;
181
182
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/metrics/base/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/metrics/base/base.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,19 @@
1
- import { type Meter, type ObservableResult } from "@opentelemetry/api";
2
- import { MetricBase } from "./base";
3
- import { IOInsights } from "@interopio/otel/insights";
4
- export declare abstract class ObservableMetricBase<TData extends IOInsights.MetricData> extends MetricBase {
5
- private observeCallback?;
6
- private subscribeCallback?;
7
- private unsubcribeCallback?;
8
- private observableCallback;
9
- private metric;
10
- constructor(settings: IOInsights.MetricSettings, meter: Meter, logger: IOInsights.Logger, generalSettings: IOInsights.MetricsSettings, defaultFilters?: IOInsights.MetricDefaultFilter[], observeCallback?: ((result: ObservableResult<TData>) => Promise<void>) | undefined, subscribeCallback?: (() => Promise<void>) | undefined, unsubcribeCallback?: (() => Promise<void>) | undefined);
11
- protected createMetric(): Promise<void>;
12
- protected subscribeCore(): Promise<void>;
13
- protected unsubscribeCore(): Promise<void>;
14
- protected observeCore(result: ObservableResult<TData>): Promise<void>;
15
- protected subscribe(): Promise<void>;
16
- protected destroyMetric(): Promise<void>;
17
- protected unsubscribe(): Promise<void>;
18
- protected observe(result: ObservableResult<TData>): Promise<void>;
19
- }
1
+ import { type Meter, type ObservableResult } from "@opentelemetry/api";
2
+ import { MetricBase } from "./base";
3
+ import { IOInsights } from "@interopio/otel/insights";
4
+ export declare abstract class ObservableMetricBase<TData extends IOInsights.MetricData> extends MetricBase {
5
+ private observeCallback?;
6
+ private subscribeCallback?;
7
+ private unsubcribeCallback?;
8
+ private observableCallback;
9
+ private metric;
10
+ constructor(settings: IOInsights.MetricSettings, meter: Meter, logger: IOInsights.Logger, generalSettings: IOInsights.MetricsSettings, defaultFilters?: IOInsights.MetricDefaultFilter[], observeCallback?: ((result: ObservableResult<TData>) => Promise<void>) | undefined, subscribeCallback?: (() => Promise<void>) | undefined, unsubcribeCallback?: (() => Promise<void>) | undefined);
11
+ protected createMetric(): Promise<void>;
12
+ protected subscribeCore(): Promise<void>;
13
+ protected unsubscribeCore(): Promise<void>;
14
+ protected observeCore(result: ObservableResult<TData>): Promise<void>;
15
+ protected subscribe(): Promise<void>;
16
+ protected destroyMetric(): Promise<void>;
17
+ protected unsubscribe(): Promise<void>;
18
+ protected observe(result: ObservableResult<TData>): Promise<void>;
19
+ }
@@ -1,89 +1,89 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ObservableMetricBase = void 0;
13
- const base_1 = require("./base");
14
- const otel_1 = require("@interopio/otel");
15
- class ObservableResultWrapper {
16
- constructor(metric, innerResult, data, getFilter) {
17
- this.metric = metric;
18
- this.innerResult = innerResult;
19
- this.data = data;
20
- this.getFilter = getFilter;
21
- }
22
- observe(value, attributes) {
23
- var _a, _b;
24
- const fullData = this.metric.prePublish(Object.assign(Object.assign({}, this.data), attributes));
25
- if (((_b = (_a = this.getFilter) === null || _a === void 0 ? void 0 : _a.call(this, fullData)) === null || _b === void 0 ? void 0 : _b.enabled) === false) {
26
- return;
27
- }
28
- this.innerResult.observe(value, fullData);
29
- }
30
- }
31
- class ObservableMetricBase extends base_1.MetricBase {
32
- constructor(settings, meter, logger, generalSettings, defaultFilters, observeCallback, subscribeCallback, unsubcribeCallback) {
33
- super(settings, meter, logger, generalSettings, defaultFilters);
34
- this.observeCallback = observeCallback;
35
- this.subscribeCallback = subscribeCallback;
36
- this.unsubcribeCallback = unsubcribeCallback;
37
- }
38
- createMetric() {
39
- const _super = Object.create(null, {
40
- createMetric: { get: () => super.createMetric }
41
- });
42
- return __awaiter(this, void 0, void 0, function* () {
43
- yield _super.createMetric.call(this);
44
- this.metric = this.metricAny;
45
- });
46
- }
47
- subscribeCore() {
48
- return otel_1.Container.errorlessAsync(() => { var _a, _b; return (_b = (_a = this.subscribeCallback) === null || _a === void 0 ? void 0 : _a.call(this)) !== null && _b !== void 0 ? _b : Promise.resolve(); });
49
- }
50
- unsubscribeCore() {
51
- return otel_1.Container.errorlessAsync(() => { var _a, _b; return (_b = (_a = this.unsubcribeCallback) === null || _a === void 0 ? void 0 : _a.call(this)) !== null && _b !== void 0 ? _b : Promise.resolve(); });
52
- }
53
- observeCore(result) {
54
- const orw = new ObservableResultWrapper(this, result, this.getData(), this.getFilter.bind(this));
55
- return otel_1.Container.errorlessAsync(() => {
56
- var _a, _b;
57
- return (_b = (_a = this.observeCallback) === null || _a === void 0 ? void 0 : _a.call(this, orw)) !== null && _b !== void 0 ? _b : Promise.resolve();
58
- });
59
- }
60
- subscribe() {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- this.observableCallback = this.observe.bind(this);
63
- this.metric.addCallback(this.observableCallback);
64
- yield this.subscribeCore();
65
- });
66
- }
67
- destroyMetric() {
68
- this.metric.removeCallback(this.observableCallback);
69
- return Promise.resolve();
70
- }
71
- unsubscribe() {
72
- return this.unsubscribeCore();
73
- }
74
- observe(result) {
75
- return __awaiter(this, void 0, void 0, function* () {
76
- try {
77
- // this.logger.debug(`observe is being invoked for metric ${this.settings.name}`);
78
- yield this.observeCore(result);
79
- // this.logger.debug(`gauge metric ${this.settings.name} has been observed`);
80
- }
81
- catch (error) {
82
- const message = `error while executing observe for metric ${this.settings.name} from type: ${this.settings.type}`;
83
- // this.logger.warn(message, error);
84
- }
85
- });
86
- }
87
- }
88
- exports.ObservableMetricBase = ObservableMetricBase;
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ObservableMetricBase = void 0;
13
+ const base_1 = require("./base");
14
+ const otel_1 = require("@interopio/otel");
15
+ class ObservableResultWrapper {
16
+ constructor(metric, innerResult, data, getFilter) {
17
+ this.metric = metric;
18
+ this.innerResult = innerResult;
19
+ this.data = data;
20
+ this.getFilter = getFilter;
21
+ }
22
+ observe(value, attributes) {
23
+ var _a, _b;
24
+ const fullData = this.metric.prePublish(Object.assign(Object.assign({}, this.data), attributes));
25
+ if (((_b = (_a = this.getFilter) === null || _a === void 0 ? void 0 : _a.call(this, fullData)) === null || _b === void 0 ? void 0 : _b.enabled) === false) {
26
+ return;
27
+ }
28
+ this.innerResult.observe(value, fullData);
29
+ }
30
+ }
31
+ class ObservableMetricBase extends base_1.MetricBase {
32
+ constructor(settings, meter, logger, generalSettings, defaultFilters, observeCallback, subscribeCallback, unsubcribeCallback) {
33
+ super(settings, meter, logger, generalSettings, defaultFilters);
34
+ this.observeCallback = observeCallback;
35
+ this.subscribeCallback = subscribeCallback;
36
+ this.unsubcribeCallback = unsubcribeCallback;
37
+ }
38
+ createMetric() {
39
+ const _super = Object.create(null, {
40
+ createMetric: { get: () => super.createMetric }
41
+ });
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ yield _super.createMetric.call(this);
44
+ this.metric = this.metricAny;
45
+ });
46
+ }
47
+ subscribeCore() {
48
+ return otel_1.Container.errorlessAsync(() => { var _a, _b; return (_b = (_a = this.subscribeCallback) === null || _a === void 0 ? void 0 : _a.call(this)) !== null && _b !== void 0 ? _b : Promise.resolve(); });
49
+ }
50
+ unsubscribeCore() {
51
+ return otel_1.Container.errorlessAsync(() => { var _a, _b; return (_b = (_a = this.unsubcribeCallback) === null || _a === void 0 ? void 0 : _a.call(this)) !== null && _b !== void 0 ? _b : Promise.resolve(); });
52
+ }
53
+ observeCore(result) {
54
+ const orw = new ObservableResultWrapper(this, result, this.getData(), this.getFilter.bind(this));
55
+ return otel_1.Container.errorlessAsync(() => {
56
+ var _a, _b;
57
+ return (_b = (_a = this.observeCallback) === null || _a === void 0 ? void 0 : _a.call(this, orw)) !== null && _b !== void 0 ? _b : Promise.resolve();
58
+ });
59
+ }
60
+ subscribe() {
61
+ return __awaiter(this, void 0, void 0, function* () {
62
+ this.observableCallback = this.observe.bind(this);
63
+ this.metric.addCallback(this.observableCallback);
64
+ yield this.subscribeCore();
65
+ });
66
+ }
67
+ destroyMetric() {
68
+ this.metric.removeCallback(this.observableCallback);
69
+ return Promise.resolve();
70
+ }
71
+ unsubscribe() {
72
+ return this.unsubscribeCore();
73
+ }
74
+ observe(result) {
75
+ return __awaiter(this, void 0, void 0, function* () {
76
+ try {
77
+ // this.logger.debug(`observe is being invoked for metric ${this.settings.name}`);
78
+ yield this.observeCore(result);
79
+ // this.logger.debug(`gauge metric ${this.settings.name} has been observed`);
80
+ }
81
+ catch (error) {
82
+ const message = `error while executing observe for metric ${this.settings.name} from type: ${this.settings.type}`;
83
+ // this.logger.warn(message, error);
84
+ }
85
+ });
86
+ }
87
+ }
88
+ exports.ObservableMetricBase = ObservableMetricBase;
89
89
  //# sourceMappingURL=observable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../../src/metrics/base/observable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observable.js","sourceRoot":"","sources":["../../../src/metrics/base/observable.ts"],"names":[],"mappings":"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"}