@interopio/otel 0.0.11 → 0.0.13

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 (251) hide show
  1. package/README.md +9 -1
  2. package/dist/builder.d.ts +19 -0
  3. package/dist/builder.js +75 -0
  4. package/dist/builder.js.map +1 -0
  5. package/dist/container.d.ts +14 -0
  6. package/dist/container.js +51 -0
  7. package/dist/container.js.map +1 -0
  8. package/dist/index.d.ts +13 -0
  9. package/dist/index.js +27 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/logger/log4jsWrapper.d.ts +13 -0
  12. package/dist/logger/log4jsWrapper.js +54 -0
  13. package/dist/logger/log4jsWrapper.js.map +1 -0
  14. package/dist/logger/null.d.ts +9 -0
  15. package/dist/logger/null.js +25 -0
  16. package/dist/logger/null.js.map +1 -0
  17. package/dist/logger/types.d.ts +17 -0
  18. package/dist/logger/types.js +3 -0
  19. package/dist/logger/types.js.map +1 -0
  20. package/dist/logs/types.d.ts +6 -0
  21. package/dist/logs/types.js +3 -0
  22. package/dist/logs/types.js.map +1 -0
  23. package/dist/metrics/builder.d.ts +20 -0
  24. package/dist/metrics/builder.js +63 -0
  25. package/dist/metrics/builder.js.map +1 -0
  26. package/dist/metrics/dependencies/builder.d.ts +29 -0
  27. package/dist/metrics/dependencies/builder.js +87 -0
  28. package/dist/metrics/dependencies/builder.js.map +1 -0
  29. package/dist/metrics/dependencies/types.d.ts +91 -0
  30. package/dist/metrics/dependencies/types.js +3 -0
  31. package/dist/metrics/dependencies/types.js.map +1 -0
  32. package/dist/metrics/factory/builder.d.ts +31 -0
  33. package/dist/metrics/factory/builder.js +198 -0
  34. package/dist/metrics/factory/builder.js.map +1 -0
  35. package/dist/metrics/factory/factory.d.ts +10 -0
  36. package/dist/metrics/factory/factory.js +33 -0
  37. package/dist/metrics/factory/factory.js.map +1 -0
  38. package/dist/metrics/factory/types.d.ts +5 -0
  39. package/dist/metrics/factory/types.js +3 -0
  40. package/dist/metrics/factory/types.js.map +1 -0
  41. package/dist/metrics/manager.d.ts +23 -0
  42. package/dist/metrics/manager.js +120 -0
  43. package/dist/metrics/manager.js.map +1 -0
  44. package/dist/metrics/meter/lazyProvider.d.ts +11 -0
  45. package/dist/metrics/meter/lazyProvider.js +23 -0
  46. package/dist/metrics/meter/lazyProvider.js.map +1 -0
  47. package/dist/metrics/meter/providerFactory.d.ts +6 -0
  48. package/dist/metrics/meter/providerFactory.js +34 -0
  49. package/dist/metrics/meter/providerFactory.js.map +1 -0
  50. package/dist/metrics/meter/types.d.ts +14 -0
  51. package/dist/metrics/meter/types.js +3 -0
  52. package/dist/metrics/meter/types.js.map +1 -0
  53. package/dist/metrics/metrics/application/count.d.ts +21 -0
  54. package/dist/metrics/metrics/application/count.js +62 -0
  55. package/dist/metrics/metrics/application/count.js.map +1 -0
  56. package/dist/metrics/metrics/application/cpu.d.ts +12 -0
  57. package/dist/metrics/metrics/application/cpu.js +40 -0
  58. package/dist/metrics/metrics/application/cpu.js.map +1 -0
  59. package/dist/metrics/metrics/application/crash.d.ts +18 -0
  60. package/dist/metrics/metrics/application/crash.js +46 -0
  61. package/dist/metrics/metrics/application/crash.js.map +1 -0
  62. package/dist/metrics/metrics/application/duration.d.ts +7 -0
  63. package/dist/metrics/metrics/application/duration.js +19 -0
  64. package/dist/metrics/metrics/application/duration.js.map +1 -0
  65. package/dist/metrics/metrics/application/durationBase.d.ts +22 -0
  66. package/dist/metrics/metrics/application/durationBase.js +97 -0
  67. package/dist/metrics/metrics/application/durationBase.js.map +1 -0
  68. package/dist/metrics/metrics/application/error.d.ts +18 -0
  69. package/dist/metrics/metrics/application/error.js +46 -0
  70. package/dist/metrics/metrics/application/error.js.map +1 -0
  71. package/dist/metrics/metrics/application/memory.d.ts +13 -0
  72. package/dist/metrics/metrics/application/memory.js +41 -0
  73. package/dist/metrics/metrics/application/memory.js.map +1 -0
  74. package/dist/metrics/metrics/application/started.d.ts +18 -0
  75. package/dist/metrics/metrics/application/started.js +46 -0
  76. package/dist/metrics/metrics/application/started.js.map +1 -0
  77. package/dist/metrics/metrics/application/startup.d.ts +18 -0
  78. package/dist/metrics/metrics/application/startup.js +46 -0
  79. package/dist/metrics/metrics/application/startup.js.map +1 -0
  80. package/dist/metrics/metrics/application/stopped.d.ts +18 -0
  81. package/dist/metrics/metrics/application/stopped.js +46 -0
  82. package/dist/metrics/metrics/application/stopped.js.map +1 -0
  83. package/dist/metrics/metrics/base/base.d.ts +17 -0
  84. package/dist/metrics/metrics/base/base.js +71 -0
  85. package/dist/metrics/metrics/base/base.js.map +1 -0
  86. package/dist/metrics/metrics/base/gauge.d.ts +18 -0
  87. package/dist/metrics/metrics/base/gauge.js +61 -0
  88. package/dist/metrics/metrics/base/gauge.js.map +1 -0
  89. package/dist/metrics/metrics/base/null.d.ts +10 -0
  90. package/dist/metrics/metrics/base/null.js +22 -0
  91. package/dist/metrics/metrics/base/null.js.map +1 -0
  92. package/dist/metrics/metrics/base/observable.d.ts +20 -0
  93. package/dist/metrics/metrics/base/observable.js +69 -0
  94. package/dist/metrics/metrics/base/observable.js.map +1 -0
  95. package/dist/metrics/metrics/base/types.d.ts +31 -0
  96. package/dist/metrics/metrics/base/types.js +3 -0
  97. package/dist/metrics/metrics/base/types.js.map +1 -0
  98. package/dist/metrics/metrics/layout/startup.d.ts +18 -0
  99. package/dist/metrics/metrics/layout/startup.js +46 -0
  100. package/dist/metrics/metrics/layout/startup.js.map +1 -0
  101. package/dist/metrics/metrics/platform/error.d.ts +18 -0
  102. package/dist/metrics/metrics/platform/error.js +46 -0
  103. package/dist/metrics/metrics/platform/error.js.map +1 -0
  104. package/dist/metrics/metrics/platform/startup.d.ts +18 -0
  105. package/dist/metrics/metrics/platform/startup.js +58 -0
  106. package/dist/metrics/metrics/platform/startup.js.map +1 -0
  107. package/dist/metrics/metrics/system/cpu.d.ts +14 -0
  108. package/dist/metrics/metrics/system/cpu.js +46 -0
  109. package/dist/metrics/metrics/system/cpu.js.map +1 -0
  110. package/dist/metrics/metrics/system/memory.d.ts +14 -0
  111. package/dist/metrics/metrics/system/memory.js +47 -0
  112. package/dist/metrics/metrics/system/memory.js.map +1 -0
  113. package/dist/metrics/metrics/workspace/count.d.ts +21 -0
  114. package/dist/metrics/metrics/workspace/count.js +62 -0
  115. package/dist/metrics/metrics/workspace/count.js.map +1 -0
  116. package/dist/metrics/metrics/workspace/startup.d.ts +9 -0
  117. package/dist/metrics/metrics/workspace/startup.js +12 -0
  118. package/dist/metrics/metrics/workspace/startup.js.map +1 -0
  119. package/dist/metrics/metrics/workspace/stopped.d.ts +18 -0
  120. package/dist/metrics/metrics/workspace/stopped.js +46 -0
  121. package/dist/metrics/metrics/workspace/stopped.js.map +1 -0
  122. package/dist/metrics/settings/builder.d.ts +24 -0
  123. package/dist/metrics/settings/builder.js +115 -0
  124. package/dist/metrics/settings/builder.js.map +1 -0
  125. package/dist/metrics/settings/default.d.ts +30 -0
  126. package/dist/metrics/settings/default.js +121 -0
  127. package/dist/metrics/settings/default.js.map +1 -0
  128. package/dist/metrics/settings/types.d.ts +14 -0
  129. package/dist/metrics/settings/types.js +3 -0
  130. package/dist/metrics/settings/types.js.map +1 -0
  131. package/dist/metrics/types.d.ts +16 -0
  132. package/dist/metrics/types.js +3 -0
  133. package/dist/metrics/types.js.map +1 -0
  134. package/dist/metrics/utils/nullMetricsManager.d.ts +6 -0
  135. package/dist/metrics/utils/nullMetricsManager.js +11 -0
  136. package/dist/metrics/utils/nullMetricsManager.js.map +1 -0
  137. package/dist/metrics/utils/nullPerfProvider.d.ts +7 -0
  138. package/dist/metrics/utils/nullPerfProvider.js +19 -0
  139. package/dist/metrics/utils/nullPerfProvider.js.map +1 -0
  140. package/dist/traces/builder.d.ts +15 -0
  141. package/dist/traces/builder.js +39 -0
  142. package/dist/traces/builder.js.map +1 -0
  143. package/dist/traces/ioInsightsSampler.d.ts +16 -0
  144. package/dist/traces/ioInsightsSampler.js +123 -0
  145. package/dist/traces/ioInsightsSampler.js.map +1 -0
  146. package/dist/traces/manager.d.ts +19 -0
  147. package/dist/traces/manager.js +151 -0
  148. package/dist/traces/manager.js.map +1 -0
  149. package/dist/traces/nullTracesManager.d.ts +6 -0
  150. package/dist/traces/nullTracesManager.js +23 -0
  151. package/dist/traces/nullTracesManager.js.map +1 -0
  152. package/dist/traces/tracingState.d.ts +28 -0
  153. package/dist/traces/tracingState.js +103 -0
  154. package/dist/traces/tracingState.js.map +1 -0
  155. package/dist/traces/types.d.ts +96 -0
  156. package/dist/traces/types.js +14 -0
  157. package/dist/traces/types.js.map +1 -0
  158. package/dist/traces/utils/index.d.ts +13 -0
  159. package/dist/traces/utils/index.js +119 -0
  160. package/dist/traces/utils/index.js.map +1 -0
  161. package/dist/types.d.ts +20 -0
  162. package/dist/types.js +3 -0
  163. package/dist/types.js.map +1 -0
  164. package/dist/utils/nullManager.d.ts +7 -0
  165. package/dist/utils/nullManager.js +21 -0
  166. package/dist/utils/nullManager.js.map +1 -0
  167. package/dist/validation/builder.d.ts +4 -0
  168. package/dist/validation/builder.js +12 -0
  169. package/dist/validation/builder.js.map +1 -0
  170. package/dist/validation/container.d.ts +4 -0
  171. package/dist/validation/container.js +14 -0
  172. package/dist/validation/container.js.map +1 -0
  173. package/dist/validation/metrics/application/count.d.ts +7 -0
  174. package/dist/validation/metrics/application/count.js +21 -0
  175. package/dist/validation/metrics/application/count.js.map +1 -0
  176. package/dist/validation/metrics/application/duration.d.ts +6 -0
  177. package/dist/validation/metrics/application/duration.js +17 -0
  178. package/dist/validation/metrics/application/duration.js.map +1 -0
  179. package/dist/validation/metrics/application/error.d.ts +6 -0
  180. package/dist/validation/metrics/application/error.js +16 -0
  181. package/dist/validation/metrics/application/error.js.map +1 -0
  182. package/dist/validation/metrics/application/started.d.ts +6 -0
  183. package/dist/validation/metrics/application/started.js +16 -0
  184. package/dist/validation/metrics/application/started.js.map +1 -0
  185. package/dist/validation/metrics/application/startupHistogram.d.ts +6 -0
  186. package/dist/validation/metrics/application/startupHistogram.js +18 -0
  187. package/dist/validation/metrics/application/startupHistogram.js.map +1 -0
  188. package/dist/validation/metrics/application/stopped.d.ts +6 -0
  189. package/dist/validation/metrics/application/stopped.js +16 -0
  190. package/dist/validation/metrics/application/stopped.js.map +1 -0
  191. package/dist/validation/metrics/base/base.d.ts +5 -0
  192. package/dist/validation/metrics/base/base.js +22 -0
  193. package/dist/validation/metrics/base/base.js.map +1 -0
  194. package/dist/validation/metrics/base/gauge.d.ts +6 -0
  195. package/dist/validation/metrics/base/gauge.js +12 -0
  196. package/dist/validation/metrics/base/gauge.js.map +1 -0
  197. package/dist/validation/metrics/builder.d.ts +4 -0
  198. package/dist/validation/metrics/builder.js +13 -0
  199. package/dist/validation/metrics/builder.js.map +1 -0
  200. package/dist/validation/metrics/factory.d.ts +4 -0
  201. package/dist/validation/metrics/factory.js +13 -0
  202. package/dist/validation/metrics/factory.js.map +1 -0
  203. package/dist/validation/metrics/factoryBuilder.d.ts +5 -0
  204. package/dist/validation/metrics/factoryBuilder.js +23 -0
  205. package/dist/validation/metrics/factoryBuilder.js.map +1 -0
  206. package/dist/validation/metrics/layout/startupHistogram.d.ts +6 -0
  207. package/dist/validation/metrics/layout/startupHistogram.js +18 -0
  208. package/dist/validation/metrics/layout/startupHistogram.js.map +1 -0
  209. package/dist/validation/metrics/manager.d.ts +4 -0
  210. package/dist/validation/metrics/manager.js +15 -0
  211. package/dist/validation/metrics/manager.js.map +1 -0
  212. package/dist/validation/metrics/meterFactory.d.ts +4 -0
  213. package/dist/validation/metrics/meterFactory.js +16 -0
  214. package/dist/validation/metrics/meterFactory.js.map +1 -0
  215. package/dist/validation/metrics/perf.d.ts +8 -0
  216. package/dist/validation/metrics/perf.js +41 -0
  217. package/dist/validation/metrics/perf.js.map +1 -0
  218. package/dist/validation/metrics/platform/crash.d.ts +6 -0
  219. package/dist/validation/metrics/platform/crash.js +16 -0
  220. package/dist/validation/metrics/platform/crash.js.map +1 -0
  221. package/dist/validation/metrics/platform/error.d.ts +6 -0
  222. package/dist/validation/metrics/platform/error.js +15 -0
  223. package/dist/validation/metrics/platform/error.js.map +1 -0
  224. package/dist/validation/metrics/platform/startup.d.ts +6 -0
  225. package/dist/validation/metrics/platform/startup.js +18 -0
  226. package/dist/validation/metrics/platform/startup.js.map +1 -0
  227. package/dist/validation/metrics/settingsBuilder.d.ts +4 -0
  228. package/dist/validation/metrics/settingsBuilder.js +22 -0
  229. package/dist/validation/metrics/settingsBuilder.js.map +1 -0
  230. package/dist/validation/metrics/workspace/count.d.ts +7 -0
  231. package/dist/validation/metrics/workspace/count.js +21 -0
  232. package/dist/validation/metrics/workspace/count.js.map +1 -0
  233. package/dist/validation/metrics/workspace/stopped.d.ts +6 -0
  234. package/dist/validation/metrics/workspace/stopped.js +16 -0
  235. package/dist/validation/metrics/workspace/stopped.js.map +1 -0
  236. package/dist/validation/traces/attributeData.d.ts +3 -0
  237. package/dist/validation/traces/attributeData.js +18 -0
  238. package/dist/validation/traces/attributeData.js.map +1 -0
  239. package/dist/validation/traces/filter.d.ts +4 -0
  240. package/dist/validation/traces/filter.js +12 -0
  241. package/dist/validation/traces/filter.js.map +1 -0
  242. package/dist/validation/traces/manager.d.ts +4 -0
  243. package/dist/validation/traces/manager.js +12 -0
  244. package/dist/validation/traces/manager.js.map +1 -0
  245. package/dist/validation/traces/withSpan.d.ts +4 -0
  246. package/dist/validation/traces/withSpan.js +18 -0
  247. package/dist/validation/traces/withSpan.js.map +1 -0
  248. package/dist/validation/validator.d.ts +4 -0
  249. package/dist/validation/validator.js +15 -0
  250. package/dist/validation/validator.js.map +1 -0
  251. package/package.json +12 -4
package/README.md CHANGED
@@ -1 +1,9 @@
1
- TBD
1
+ # How to build the package
2
+ npm i
3
+ npm run build
4
+
5
+ # How to test the package
6
+ npm run test
7
+
8
+ # How to publish the package
9
+ npm publish
@@ -0,0 +1,19 @@
1
+ import { MetricsManagerBuilder } from "./metrics/builder";
2
+ import { TracesManagerBuilder } from "./traces/builder";
3
+ import { TracesManagerBuilder as ITracesBuilder } from "./traces/types";
4
+ import { MetricsManagerBuilder as IMetricsBuilder } from "./metrics/types";
5
+ import { Container as IContainer, Settings } from "./types";
6
+ import { Logger } from "./logger/types";
7
+ export declare class Builder {
8
+ logger: Logger;
9
+ settings: Partial<Settings>;
10
+ metricsBuilder: MetricsManagerBuilder;
11
+ tracesBuilder: TracesManagerBuilder;
12
+ constructor();
13
+ withLogger(logger: Logger): this;
14
+ withSettings(settings: Partial<Settings>): this;
15
+ withMetrics(): IMetricsBuilder;
16
+ withTraces(): ITracesBuilder;
17
+ build(): IContainer;
18
+ private buildCore;
19
+ }
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Builder = void 0;
4
+ const api_1 = require("@opentelemetry/api");
5
+ const builder_1 = require("./metrics/builder");
6
+ const builder_2 = require("./traces/builder");
7
+ const null_1 = require("./logger/null");
8
+ const builder_3 = require("./validation/builder");
9
+ const container_1 = require("./container");
10
+ const nullMetricsManager_1 = require("./metrics/utils/nullMetricsManager");
11
+ const nullManager_1 = require("./utils/nullManager");
12
+ const nullTracesManager_1 = require("./traces/nullTracesManager");
13
+ class Builder {
14
+ /*
15
+ constructor(logger, settings) {
16
+ const metrics = new MetricsManager(logger, settings);
17
+ const traces = new TracesManager(logger, settings);
18
+ const logs = new LogsManager(logger, logs);
19
+ this.container = new container(metrics, traces, logs);
20
+ }
21
+ */
22
+ constructor() {
23
+ this.logger = new null_1.NullLogger();
24
+ }
25
+ // these methods must be invoked
26
+ withLogger(logger) {
27
+ var _a;
28
+ this.logger = logger !== null && logger !== void 0 ? logger : this.logger;
29
+ const augmentedLogger = this.logger;
30
+ augmentedLogger.verbose = () => ({});
31
+ if (this.logger.level) {
32
+ const level = (_a = this.logger.level) === null || _a === void 0 ? void 0 : _a.valueOf();
33
+ api_1.diag.setLogger(augmentedLogger, level);
34
+ }
35
+ else {
36
+ api_1.diag.setLogger(augmentedLogger, 70 /* LoggerLogLevel.DEBUG */);
37
+ // todo vnikolov: for glue/iodesktop logger use logger.publishLevel() and convert it to LoggerLogLevel
38
+ }
39
+ return this;
40
+ }
41
+ withSettings(settings) {
42
+ this.settings = settings;
43
+ return this;
44
+ }
45
+ // before these methods
46
+ withMetrics() {
47
+ var _a;
48
+ this.metricsBuilder = new builder_1.MetricsManagerBuilder();
49
+ this.metricsBuilder.withLogger(this.logger);
50
+ this.metricsBuilder.withSettings((_a = this.settings) === null || _a === void 0 ? void 0 : _a.metrics);
51
+ return this.metricsBuilder;
52
+ }
53
+ withTraces() {
54
+ var _a;
55
+ this.tracesBuilder = new builder_2.TracesManagerBuilder();
56
+ this.tracesBuilder.withLogger(this.logger);
57
+ this.tracesBuilder.withSettings((_a = this.settings) === null || _a === void 0 ? void 0 : _a.traces);
58
+ return this.tracesBuilder;
59
+ }
60
+ build() {
61
+ const validator = new builder_3.BuilderValidator();
62
+ validator.validate(this);
63
+ return this.buildCore();
64
+ }
65
+ buildCore() {
66
+ const metrics = this.metricsBuilder ? this.metricsBuilder.build() : new nullMetricsManager_1.NullMetricsManager();
67
+ const traces = this.tracesBuilder ? this.tracesBuilder.build() : new nullTracesManager_1.NullTracesManager();
68
+ // not implemented yet
69
+ const logs = new nullManager_1.NullManager();
70
+ const container = new container_1.Container(traces, metrics, logs);
71
+ return container;
72
+ }
73
+ }
74
+ exports.Builder = Builder;
75
+ //# sourceMappingURL=builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":";;;AAAA,4CAA0C;AAC1C,+CAA0D;AAC1D,8CAAwD;AAIxD,wCAA2C;AAC3C,kDAAwD;AAExD,2CAAwC;AACxC,2EAAwE;AACxE,qDAAkD;AAElD,kEAA+D;AAE/D,MAAa,OAAO;IAMlB;;;;;;;QAOI;IACJ;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAU,EAAE,CAAC;IACjC,CAAC;IAED,gCAAgC;IAEzB,UAAU,CAAC,MAAc;;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,CAAC,MAAM,CAAC;QAEpC,MAAM,eAAe,GAA8B,IAAI,CAAC,MAAa,CAAC;QACtE,eAAe,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAErC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACrB,MAAM,KAAK,GAAG,MAAA,IAAI,CAAC,MAAM,CAAC,KAAK,0CAAE,OAAO,EAAE,CAAC;YAC3C,UAAI,CAAC,SAAS,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;SACxC;aAAM;YACL,UAAI,CAAC,SAAS,CAAC,eAAe,EAAE,6BAA2B,CAAC,CAAC;YAC7D,sGAAsG;SACvG;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,YAAY,CAAC,QAA2B;QAC7C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAuB;IAEhB,WAAW;;QAChB,IAAI,CAAC,cAAc,GAAG,IAAI,+BAAqB,EAAE,CAAC;QAClD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,MAAA,IAAI,CAAC,QAAQ,0CAAE,OAAO,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAEM,UAAU;;QACf,IAAI,CAAC,aAAa,GAAG,IAAI,8BAAoB,EAAE,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAA,IAAI,CAAC,QAAQ,0CAAE,MAAM,CAAC,CAAC;QAEvD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAEM,KAAK;QACV,MAAM,SAAS,GAAG,IAAI,0BAAgB,EAAE,CAAC;QACzC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEzB,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEO,SAAS;QACf,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,uCAAkB,EAAE,CAAC;QAE7F,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,qCAAiB,EAAE,CAAC;QAEzF,sBAAsB;QACtB,MAAM,IAAI,GAAG,IAAI,yBAAW,EAAgB,CAAC;QAE7C,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACvD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AA7ED,0BA6EC"}
@@ -0,0 +1,14 @@
1
+ import { LogsManager } from "./logs/types";
2
+ import { MetricsManager } from "./metrics/types";
3
+ import { TracesManager } from "./traces/types";
4
+ import { Container as IContainer, Settings } from "./types";
5
+ export declare class Container implements IContainer {
6
+ traces: TracesManager;
7
+ metrics: MetricsManager;
8
+ logs: LogsManager;
9
+ started: boolean;
10
+ constructor(traces: TracesManager, metrics: MetricsManager, logs: LogsManager);
11
+ get settings(): Settings;
12
+ start(): Promise<void>;
13
+ stop(): Promise<void>;
14
+ }
@@ -0,0 +1,51 @@
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.Container = void 0;
13
+ const container_1 = require("./validation/container");
14
+ class Container {
15
+ constructor(traces, metrics, logs) {
16
+ this.traces = traces;
17
+ this.metrics = metrics;
18
+ this.logs = logs;
19
+ this.started = false;
20
+ const validator = new container_1.ContainerValidator();
21
+ validator.validate(this);
22
+ }
23
+ get settings() {
24
+ return {
25
+ metrics: this.metrics.settings,
26
+ traces: this.traces.settings,
27
+ logs: this.logs.settings
28
+ };
29
+ }
30
+ start() {
31
+ return __awaiter(this, void 0, void 0, function* () {
32
+ // vnikolov TODO: maybe log this? don't silently refuse to start
33
+ const metricsPromise = this.metrics.settings.enabled ? this.metrics.start() : Promise.resolve();
34
+ const tracesPromise = this.traces.settings.enabled ? this.traces.start() : Promise.resolve();
35
+ const logsPromise = this.logs.settings.enabled ? this.logs.start() : Promise.resolve();
36
+ yield Promise.all([metricsPromise, tracesPromise, logsPromise]);
37
+ this.started = true;
38
+ });
39
+ }
40
+ stop() {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ const metricsPromise = this.metrics.started ? this.metrics.stop() : Promise.resolve();
43
+ const tracesPromise = this.traces.started ? this.traces.stop() : Promise.resolve();
44
+ const logsPromise = this.logs.started ? this.logs.stop() : Promise.resolve();
45
+ yield Promise.all([metricsPromise, tracesPromise, logsPromise]);
46
+ this.started = false;
47
+ });
48
+ }
49
+ }
50
+ exports.Container = Container;
51
+ //# sourceMappingURL=container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../src/container.ts"],"names":[],"mappings":";;;;;;;;;;;;AAIA,sDAA4D;AAE5D,MAAa,SAAS;IAGlB,YACW,MAAqB,EACrB,OAAuB,EACvB,IAAiB;QAFjB,WAAM,GAAN,MAAM,CAAe;QACrB,YAAO,GAAP,OAAO,CAAgB;QACvB,SAAI,GAAJ,IAAI,CAAa;QALrB,YAAO,GAAY,KAAK,CAAC;QAO5B,MAAM,SAAS,GAAG,IAAI,8BAAkB,EAAE,CAAC;QAC3C,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,IAAW,QAAQ;QACf,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;YAC9B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;SAC3B,CAAC;IACN,CAAC;IAEY,KAAK;;YACd,gEAAgE;YAChE,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAChG,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC7F,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAEvF,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;YAEhE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,CAAC;KAAA;IAEY,IAAI;;YACb,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACtF,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACnF,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAE7E,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;YAEhE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,CAAC;KAAA;CACJ;AAxCD,8BAwCC"}
@@ -0,0 +1,13 @@
1
+ export { Builder } from "./builder";
2
+ export { ioInsightsSampler } from "./traces/ioInsightsSampler";
3
+ export { Log4jsWrapper } from "./logger/log4jsWrapper";
4
+ export { Container, Manager, Settings } from "./types";
5
+ export { Logger, LoggerLogLevel } from "./logger/types";
6
+ export { MetricsManagerBuilder, MetricsManager } from "./metrics/types";
7
+ export { MetricsSettings } from "./metrics/settings/types";
8
+ export { MetricsMeterProvider, MetricsMeterSettings } from "./metrics/meter/types";
9
+ export { MetricSettings, MetricType, Metric } from "./metrics/metrics/base/types";
10
+ export { MetricsDependencyBuilder } from "./metrics/dependencies/builder";
11
+ export * from "./metrics/dependencies/types";
12
+ export { TracesManager, TracesSettings, SamplingSettings, TracesDefaultsSettings } from "./traces/types";
13
+ export { LogsManager, LogsSettings } from "./logs/types";
package/dist/index.js ADDED
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.MetricsDependencyBuilder = exports.Log4jsWrapper = exports.ioInsightsSampler = exports.Builder = void 0;
18
+ var builder_1 = require("./builder");
19
+ Object.defineProperty(exports, "Builder", { enumerable: true, get: function () { return builder_1.Builder; } });
20
+ var ioInsightsSampler_1 = require("./traces/ioInsightsSampler");
21
+ Object.defineProperty(exports, "ioInsightsSampler", { enumerable: true, get: function () { return ioInsightsSampler_1.ioInsightsSampler; } });
22
+ var log4jsWrapper_1 = require("./logger/log4jsWrapper");
23
+ Object.defineProperty(exports, "Log4jsWrapper", { enumerable: true, get: function () { return log4jsWrapper_1.Log4jsWrapper; } });
24
+ var builder_2 = require("./metrics/dependencies/builder");
25
+ Object.defineProperty(exports, "MetricsDependencyBuilder", { enumerable: true, get: function () { return builder_2.MetricsDependencyBuilder; } });
26
+ __exportStar(require("./metrics/dependencies/types"), exports);
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,gEAA+D;AAAtD,sHAAA,iBAAiB,OAAA;AAC1B,wDAAuD;AAA9C,8GAAA,aAAa,OAAA;AAUtB,0DAA0E;AAAjE,mHAAA,wBAAwB,OAAA;AACjC,+DAA6C"}
@@ -0,0 +1,13 @@
1
+ import * as log4js from "log4js";
2
+ import { Logger, LoggerLogLevel } from "./types";
3
+ export declare class Log4jsWrapper implements Logger {
4
+ private logger;
5
+ constructor(logger: log4js.Logger);
6
+ get level(): LoggerLogLevel;
7
+ error(message: string, ...args: unknown[]): void;
8
+ warn(message: string, ...args: unknown[]): void;
9
+ info(message: string, ...args: unknown[]): void;
10
+ debug(message: string, ...args: unknown[]): void;
11
+ verbose(message: string, ...args: unknown[]): void;
12
+ private convert;
13
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Log4jsWrapper = void 0;
4
+ // wraps a log4js wrapper into an OTEL library logger
5
+ class Log4jsWrapper {
6
+ constructor(logger) {
7
+ this.logger = logger;
8
+ }
9
+ get level() {
10
+ return this.convert(this.logger.level);
11
+ }
12
+ error(message, ...args) {
13
+ // we log errors as warn because some of our clients stopped the platform if an log error is observed (they consider it as broken state)
14
+ // we can do that since otel impl is not considered critical
15
+ this.logger.warn(message, ...args);
16
+ }
17
+ warn(message, ...args) {
18
+ this.logger.warn(message, ...args);
19
+ }
20
+ info(message, ...args) {
21
+ this.logger.info(message, ...args);
22
+ }
23
+ debug(message, ...args) {
24
+ this.logger.debug(message, ...args);
25
+ }
26
+ verbose(message, ...args) {
27
+ this.logger.trace(message, ...args);
28
+ }
29
+ convert(level) {
30
+ const currentLevel = typeof level !== "string" ? level.levelStr.toLowerCase() : level.toLowerCase();
31
+ switch (currentLevel) {
32
+ case "error": {
33
+ return 30 /* LoggerLogLevel.ERROR */;
34
+ }
35
+ case "warn": {
36
+ return 50 /* LoggerLogLevel.WARN */;
37
+ }
38
+ case "info": {
39
+ return 60 /* LoggerLogLevel.INFO */;
40
+ }
41
+ case "debug": {
42
+ return 70 /* LoggerLogLevel.DEBUG */;
43
+ }
44
+ case "trace": {
45
+ return 80 /* LoggerLogLevel.VERBOSE */;
46
+ }
47
+ default: {
48
+ return 60 /* LoggerLogLevel.INFO */;
49
+ }
50
+ }
51
+ }
52
+ }
53
+ exports.Log4jsWrapper = Log4jsWrapper;
54
+ //# sourceMappingURL=log4jsWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log4jsWrapper.js","sourceRoot":"","sources":["../../src/logger/log4jsWrapper.ts"],"names":[],"mappings":";;;AAGA,qDAAqD;AACrD,MAAa,aAAa;IAGtB,YAAY,MAAqB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,IAAW,KAAK;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,GAAG,IAAe;QAC5C,wIAAwI;QACxI,4DAA4D;QAC5D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACvC,CAAC;IAEM,IAAI,CAAC,OAAe,EAAE,GAAG,IAAe;QAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACvC,CAAC;IAEM,IAAI,CAAC,OAAe,EAAE,GAAG,IAAe;QAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACvC,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,GAAG,IAAe;QAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACxC,CAAC;IAEM,OAAO,CAAC,OAAe,EAAE,GAAG,IAAe;QAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACxC,CAAC;IAEO,OAAO,CAAC,KAA4B;QACxC,MAAM,YAAY,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAEpG,QAAQ,YAAY,EAAE;YAClB,KAAK,OAAO,CAAC,CAAC;gBACV,qCAA4B;aAC/B;YACD,KAAK,MAAM,CAAC,CAAC;gBACT,oCAA2B;aAC9B;YACD,KAAK,MAAM,CAAC,CAAC;gBACT,oCAA2B;aAC9B;YACD,KAAK,OAAO,CAAC,CAAC;gBACV,qCAA4B;aAC/B;YACD,KAAK,OAAO,CAAC,CAAC;gBACV,uCAA8B;aACjC;YACD,OAAO,CAAC,CAAC;gBACL,oCAA2B;aAC9B;SACJ;IACL,CAAC;CACJ;AAzDD,sCAyDC"}
@@ -0,0 +1,9 @@
1
+ import { Logger, LoggerLogLevel } from "./types";
2
+ export declare class NullLogger implements Logger {
3
+ get level(): LoggerLogLevel;
4
+ error(): void;
5
+ warn(): void;
6
+ info(): void;
7
+ debug(): void;
8
+ verbose(): void;
9
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NullLogger = void 0;
4
+ class NullLogger {
5
+ get level() {
6
+ return 60 /* LoggerLogLevel.INFO */;
7
+ }
8
+ error() {
9
+ // do nothing
10
+ }
11
+ warn() {
12
+ // do nothing
13
+ }
14
+ info() {
15
+ // do nothing
16
+ }
17
+ debug() {
18
+ // do nothing
19
+ }
20
+ verbose() {
21
+ // do nothing
22
+ }
23
+ }
24
+ exports.NullLogger = NullLogger;
25
+ //# sourceMappingURL=null.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"null.js","sourceRoot":"","sources":["../../src/logger/null.ts"],"names":[],"mappings":";;;AAEA,MAAa,UAAU;IAEnB,IAAW,KAAK;QACZ,oCAA2B;IAC/B,CAAC;IAEM,KAAK;QACR,aAAa;IACjB,CAAC;IAEM,IAAI;QACP,aAAa;IACjB,CAAC;IAEM,IAAI;QACP,aAAa;IACjB,CAAC;IAEM,KAAK;QACR,aAAa;IACjB,CAAC;IAEM,OAAO;QACV,aAAa;IACjB,CAAC;CACJ;AAzBD,gCAyBC"}
@@ -0,0 +1,17 @@
1
+ export interface Logger {
2
+ level?: LoggerLogLevel;
3
+ error(message: string, ...args: unknown[]): void;
4
+ warn(message: string, ...args: unknown[]): void;
5
+ info(message: string, ...args: unknown[]): void;
6
+ debug(message: string, ...args: unknown[]): void;
7
+ verbose(message: string, ...args: unknown[]): void;
8
+ }
9
+ export declare const enum LoggerLogLevel {
10
+ NONE = 0,
11
+ ERROR = 30,
12
+ WARN = 50,
13
+ INFO = 60,
14
+ DEBUG = 70,
15
+ VERBOSE = 80,
16
+ ALL = 9999
17
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/logger/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { Manager } from "../types";
2
+ export interface LogsManager extends Manager<LogsSettings> {
3
+ }
4
+ export interface LogsSettings {
5
+ enabled: boolean;
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/logs/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import { Logger } from "../logger/types";
2
+ import { MetricsDependencyContainer } from "./dependencies/types";
3
+ import { MetricsManager as IMetricsManager, MetricsManagerBuilder as IMetricsManagerBuilder } from "./types";
4
+ import { MetricsMeterProviderCreateFunc } from "./meter/types";
5
+ import { MetricsSettings } from "./settings/types";
6
+ export declare class MetricsManagerBuilder implements IMetricsManagerBuilder {
7
+ logger: Logger;
8
+ settings: MetricsSettings | undefined;
9
+ meterProviderCreateFunc: MetricsMeterProviderCreateFunc;
10
+ dependencyContainer: MetricsDependencyContainer;
11
+ withLogger(logger: Logger): this;
12
+ withSettings(settings?: MetricsSettings): this;
13
+ withMeterProvider(meterProviderCreateFunc: MetricsMeterProviderCreateFunc): this;
14
+ withDependencyContainer(container: MetricsDependencyContainer): this;
15
+ build(): IMetricsManager;
16
+ private buildCore;
17
+ private createMetricsSettings;
18
+ private createMetricsFactory;
19
+ private createMeterProviderCreateFunc;
20
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MetricsManagerBuilder = void 0;
4
+ const builder_1 = require("./factory/builder");
5
+ const manager_1 = require("./manager");
6
+ const builder_2 = require("./settings/builder");
7
+ const builder_3 = require("../validation/metrics/builder");
8
+ const providerFactory_1 = require("./meter/providerFactory");
9
+ const lazyProvider_1 = require("./meter/lazyProvider");
10
+ class MetricsManagerBuilder {
11
+ withLogger(logger) {
12
+ this.logger = logger;
13
+ return this;
14
+ }
15
+ withSettings(settings) {
16
+ this.settings = settings;
17
+ return this;
18
+ }
19
+ withMeterProvider(meterProviderCreateFunc) {
20
+ this.meterProviderCreateFunc = meterProviderCreateFunc;
21
+ return this;
22
+ }
23
+ withDependencyContainer(container) {
24
+ this.dependencyContainer = container;
25
+ return this;
26
+ }
27
+ build() {
28
+ const validator = new builder_3.MetricsBuilderValidator();
29
+ validator.validate(this);
30
+ return this.buildCore();
31
+ }
32
+ buildCore() {
33
+ var _a;
34
+ const metricsSettings = this.createMetricsSettings();
35
+ const meterProviderCreateFunc = (_a = this.meterProviderCreateFunc) !== null && _a !== void 0 ? _a : this.createMeterProviderCreateFunc(metricsSettings.meter);
36
+ const lazyMeterProvider = new lazyProvider_1.LazyMetricsMeterProvider(meterProviderCreateFunc, metricsSettings.meter.serviceName);
37
+ const metricsFactory = this.createMetricsFactory(lazyMeterProvider, this.dependencyContainer, this.logger);
38
+ const manager = new manager_1.MetricsManager(metricsSettings, metricsFactory, lazyMeterProvider, this.logger);
39
+ return manager;
40
+ }
41
+ createMetricsSettings() {
42
+ const settings = new builder_2.MetricsSettingsBuilder()
43
+ .withSettings(this.settings)
44
+ .build();
45
+ return settings;
46
+ }
47
+ createMetricsFactory(lazyMeterProvider, dependencyContainer, logger) {
48
+ const factory = new builder_1.MetricsFactoryBuilder(lazyMeterProvider, dependencyContainer, logger)
49
+ .withDefaults()
50
+ .build();
51
+ return factory;
52
+ }
53
+ createMeterProviderCreateFunc(settings) {
54
+ const copy = Object.assign({}, settings);
55
+ return () => {
56
+ const factory = new providerFactory_1.MetricsMeterProviderFactory();
57
+ const meterProvider = factory.create(copy);
58
+ return meterProvider;
59
+ };
60
+ }
61
+ }
62
+ exports.MetricsManagerBuilder = MetricsManagerBuilder;
63
+ //# sourceMappingURL=builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/metrics/builder.ts"],"names":[],"mappings":";;;AAAA,+CAA0D;AAC1D,uCAA2C;AAC3C,gDAA4D;AAC5D,2DAAwE;AACxE,6DAAsE;AAOtE,uDAAgE;AAEhE,MAAa,qBAAqB;IAMvB,UAAU,CAAC,MAAc;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,YAAY,CAAC,QAA0B;QAC1C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,iBAAiB,CAAC,uBAAuD;QAC5E,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,uBAAuB,CAAC,SAAqC;QAChE,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QACrC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,KAAK;QACR,MAAM,SAAS,GAAG,IAAI,iCAAuB,EAAE,CAAC;QAChD,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEzB,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;IAC5B,CAAC;IAEO,SAAS;;QACb,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACrD,MAAM,uBAAuB,GAAG,MAAA,IAAI,CAAC,uBAAuB,mCAAI,IAAI,CAAC,6BAA6B,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC1H,MAAM,iBAAiB,GAAG,IAAI,uCAAwB,CAAC,uBAAuB,EAAE,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACnH,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3G,MAAM,OAAO,GAAG,IAAI,wBAAc,CAAC,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACpG,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,qBAAqB;QACzB,MAAM,QAAQ,GAAG,IAAI,gCAAsB,EAAE;aACxC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC3B,KAAK,EAAE,CAAC;QAEb,OAAO,QAAQ,CAAC;IACpB,CAAC;IAEO,oBAAoB,CACxB,iBAA2C,EAC3C,mBAA+C,EAC/C,MAAc;QAGd,MAAM,OAAO,GAAG,IAAI,+BAAqB,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,CAAC;aACpF,YAAY,EAAE;aACd,KAAK,EAAE,CAAC;QAEb,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,6BAA6B,CAAC,QAAsC;QACxE,MAAM,IAAI,qBAAQ,QAAQ,CAAE,CAAC;QAC7B,OAAO,GAAG,EAAE;YACR,MAAM,OAAO,GAAG,IAAI,6CAA2B,EAAE,CAAC;YAClD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3C,OAAO,aAAa,CAAC;QACzB,CAAC,CAAC;IACN,CAAC;CACJ;AAvED,sDAuEC"}
@@ -0,0 +1,29 @@
1
+ import { InstanceCrashHandler, InstanceErrorHandler, InstanceActionHandler, InstanceFocusedHandler, InstanceReadyHandler, LayoutRestoredHandler, PerformanceProvider, PlatformErrorHandler, PlatformStartedHandler, MetricsDependencyContainer, WorkspaceActionHandler, WorkspaceRestoredHandler } from "./types";
2
+ export declare class MetricsDependencyBuilder {
3
+ private performanceProvider;
4
+ private instanceStartedHandler;
5
+ private instanceStoppedHandler;
6
+ private instanceReadyHandler;
7
+ private instanceFocusedHandler;
8
+ private instanceErrorHandler;
9
+ private instanceCrashHandler;
10
+ private layoutRestoredHandler;
11
+ private workspaceRestoredHandler;
12
+ private workspaceStoppedHandler;
13
+ private platformStartedHandler;
14
+ private platformErrorHandler;
15
+ constructor();
16
+ build(): MetricsDependencyContainer;
17
+ withInstanceStartedHandler(instanceStartedHandler: InstanceActionHandler): this;
18
+ withInstanceStoppedHandler(instanceStoppedHandler: InstanceActionHandler): this;
19
+ withInstanceReadyHandler(instanceReadyHandler: InstanceReadyHandler): this;
20
+ withInstanceFocusedHandler(instanceFocusedHandler: InstanceFocusedHandler): this;
21
+ withInstanceErrorHandler(instanceErrorHandler: InstanceErrorHandler): this;
22
+ withInstanceCrashHandler(instanceCrashHandler: InstanceCrashHandler): this;
23
+ withLayoutRestoredHandler(layoutRestoredHandler: LayoutRestoredHandler): this;
24
+ withWorkspaceRestoredHandler(workspaceRestoredHandler: WorkspaceRestoredHandler): this;
25
+ withWorkspaceStoppedHandler(workspaceStoppedHandler: WorkspaceActionHandler): this;
26
+ withPlatformStartedHandler(platformStartedHandler: PlatformStartedHandler): this;
27
+ withPlatformErrorHandler(platformErrorHandler: PlatformErrorHandler): this;
28
+ withPerfProvider(perfProvider: PerformanceProvider): this;
29
+ }
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MetricsDependencyBuilder = void 0;
4
+ const nullPerfProvider_1 = require("../utils/nullPerfProvider");
5
+ class MetricsDependencyBuilder {
6
+ constructor() {
7
+ this.performanceProvider = new nullPerfProvider_1.NullPerformanceProvider();
8
+ this.instanceFocusedHandler = () => () => { };
9
+ this.instanceStartedHandler = () => () => { };
10
+ this.instanceStoppedHandler = () => () => { };
11
+ this.instanceReadyHandler = () => () => { };
12
+ this.instanceErrorHandler = () => () => { };
13
+ this.instanceCrashHandler = () => () => { };
14
+ this.layoutRestoredHandler = () => () => { };
15
+ this.workspaceRestoredHandler = () => () => { };
16
+ this.workspaceStoppedHandler = () => () => { };
17
+ this.platformStartedHandler = () => () => { };
18
+ this.platformErrorHandler = () => () => { };
19
+ }
20
+ build() {
21
+ const container = {
22
+ performanceProvider: this.performanceProvider,
23
+ instanceStartedHandler: this.instanceStartedHandler,
24
+ instanceStoppedHandler: this.instanceStoppedHandler,
25
+ instanceReadyHandler: this.instanceReadyHandler,
26
+ instanceFocusedHandler: this.instanceFocusedHandler,
27
+ instanceErrorHandler: this.instanceErrorHandler,
28
+ instanceCrashHandler: this.instanceCrashHandler,
29
+ layoutRestoredHandler: this.layoutRestoredHandler,
30
+ workspaceRestoredHandler: this.workspaceRestoredHandler,
31
+ workspaceStoppedHandler: this.workspaceStoppedHandler,
32
+ platformStartedHandler: this.platformStartedHandler,
33
+ platformErrorHandler: this.platformErrorHandler,
34
+ };
35
+ return container;
36
+ }
37
+ withInstanceStartedHandler(instanceStartedHandler) {
38
+ this.instanceStartedHandler = instanceStartedHandler;
39
+ return this;
40
+ }
41
+ withInstanceStoppedHandler(instanceStoppedHandler) {
42
+ this.instanceStoppedHandler = instanceStoppedHandler;
43
+ return this;
44
+ }
45
+ withInstanceReadyHandler(instanceReadyHandler) {
46
+ this.instanceReadyHandler = instanceReadyHandler;
47
+ return this;
48
+ }
49
+ withInstanceFocusedHandler(instanceFocusedHandler) {
50
+ this.instanceFocusedHandler = instanceFocusedHandler;
51
+ return this;
52
+ }
53
+ withInstanceErrorHandler(instanceErrorHandler) {
54
+ this.instanceErrorHandler = instanceErrorHandler;
55
+ return this;
56
+ }
57
+ withInstanceCrashHandler(instanceCrashHandler) {
58
+ this.instanceCrashHandler = instanceCrashHandler;
59
+ return this;
60
+ }
61
+ withLayoutRestoredHandler(layoutRestoredHandler) {
62
+ this.layoutRestoredHandler = layoutRestoredHandler;
63
+ return this;
64
+ }
65
+ withWorkspaceRestoredHandler(workspaceRestoredHandler) {
66
+ this.workspaceRestoredHandler = workspaceRestoredHandler;
67
+ return this;
68
+ }
69
+ withWorkspaceStoppedHandler(workspaceStoppedHandler) {
70
+ this.workspaceStoppedHandler = workspaceStoppedHandler;
71
+ return this;
72
+ }
73
+ withPlatformStartedHandler(platformStartedHandler) {
74
+ this.platformStartedHandler = platformStartedHandler;
75
+ return this;
76
+ }
77
+ withPlatformErrorHandler(platformErrorHandler) {
78
+ this.platformErrorHandler = platformErrorHandler;
79
+ return this;
80
+ }
81
+ withPerfProvider(perfProvider) {
82
+ this.performanceProvider = perfProvider;
83
+ return this;
84
+ }
85
+ }
86
+ exports.MetricsDependencyBuilder = MetricsDependencyBuilder;
87
+ //# sourceMappingURL=builder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/metrics/dependencies/builder.ts"],"names":[],"mappings":";;;AAAA,gEAAoE;AAgBpE,MAAa,wBAAwB;IAcjC;QACI,IAAI,CAAC,mBAAmB,GAAG,IAAI,0CAAuB,EAAE,CAAC;QACzD,IAAI,CAAC,sBAAsB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,sBAAsB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,sBAAsB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,oBAAoB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,oBAAoB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,oBAAoB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,qBAAqB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,wBAAwB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,uBAAuB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,sBAAsB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC9C,IAAI,CAAC,oBAAoB,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAChD,CAAC;IAEM,KAAK;QACR,MAAM,SAAS,GAA+B;YAC1C,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;YAC7C,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;YACvD,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAClD,CAAC;QACF,OAAO,SAAS,CAAC;IACrB,CAAC;IAEM,0BAA0B,CAAC,sBAA6C;QAC3E,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,0BAA0B,CAAC,sBAA6C;QAC3E,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,wBAAwB,CAAC,oBAA0C;QACtE,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,0BAA0B,CAAC,sBAA8C;QAC5E,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,wBAAwB,CAAC,oBAA0C;QACtE,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,wBAAwB,CAAC,oBAA0C;QACtE,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,yBAAyB,CAAC,qBAA4C;QACzE,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QACnD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,4BAA4B,CAAC,wBAAkD;QAClF,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,2BAA2B,CAAC,uBAA+C;QAC9E,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,0BAA0B,CAAC,sBAA8C;QAC5E,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,wBAAwB,CAAC,oBAA0C;QACtE,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,gBAAgB,CAAC,YAAiC;QACrD,IAAI,CAAC,mBAAmB,GAAG,YAAY,CAAC;QACxC,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AA1GD,4DA0GC"}