@codefresh-io/cf-telemetry 2.0.0-alpha.3 → 2.0.0-alpha.4

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.
@@ -0,0 +1,4 @@
1
+ export declare const globalConfig: {
2
+ readonly serviceName: string | undefined;
3
+ readonly serviceVersion: string | undefined;
4
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.globalConfig = void 0;
4
+ exports.globalConfig = {
5
+ serviceName: process.env['CF_TELEMETRY_SERVICE_NAME'],
6
+ serviceVersion: process.env['CF_TELEMETRY_SERVICE_VERSION'],
7
+ };
8
+ //# sourceMappingURL=global-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-config.js","sourceRoot":"","sources":["../src/global-config.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG;IAC1B,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;IACrD,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC;CACnD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
+ import * as _otel from './otel';
1
2
  import * as _logger from './logger';
2
3
  import * as _prometheus from './metrics/prometheus';
3
- import * as _otel from './otel';
4
4
  export declare const init: () => Promise<void>;
5
+ export declare const terminate: () => Promise<void>;
5
6
  export declare const prometheus: {
6
7
  register: _prometheus.client.Registry<"text/plain; version=0.0.4; charset=utf-8">;
7
8
  metrics: typeof _prometheus.metrics;
package/dist/index.js CHANGED
@@ -33,41 +33,42 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.otel = exports.logs = exports.mongodb = exports.prometheus = exports.init = void 0;
37
- const config_1 = require("./config");
36
+ exports.otel = exports.logs = exports.mongodb = exports.prometheus = exports.terminate = exports.init = void 0;
37
+ // Should be imported first
38
+ const _otel = __importStar(require("./otel"));
39
+ // ↑ Should be imported first
38
40
  const _logger = __importStar(require("./logger"));
39
41
  const _mongodb = __importStar(require("./metrics/mongodb"));
40
42
  const _prometheus = __importStar(require("./metrics/prometheus"));
41
- const _otel = __importStar(require("./otel"));
42
43
  const _profiles = __importStar(require("./profiles"));
43
44
  let isInitialized = false;
44
- const terminate = async () => {
45
- const logger = new _logger.Logger('telemetry');
46
- try {
47
- logger.info('Terminating telemetry services');
48
- await _otel.terminate(logger).catch(logger.error);
49
- isInitialized = false;
50
- logger.info('Telemetry services terminated');
51
- }
52
- catch (exception) {
53
- logger.error('Failed to terminate telemetry services', exception);
54
- }
55
- };
56
45
  const init = async () => {
57
46
  if (isInitialized)
58
47
  return;
59
48
  const logger = new _logger.Logger('telemetry');
60
49
  logger.info('Initializing telemetry services');
61
- await _otel.init(logger).catch(logger.error); // Should initialize first
50
+ await _otel.init(logger).catch(logger.error);
62
51
  await Promise.all([
63
52
  _prometheus.init(logger).catch(logger.error),
64
53
  _profiles.init(logger).catch(logger.error),
65
54
  ]);
66
- config_1.config.terminateSignals.forEach(signal => process.on(signal, terminate));
67
55
  isInitialized = true;
68
56
  logger.info('Telemetry services initialized');
69
57
  };
70
58
  exports.init = init;
59
+ const terminate = async () => {
60
+ const logger = new _logger.Logger('telemetry');
61
+ try {
62
+ logger.info('Terminating telemetry services');
63
+ await _otel.terminate(logger).catch(logger.error);
64
+ isInitialized = false;
65
+ logger.info('Telemetry services terminated');
66
+ }
67
+ catch (exception) {
68
+ logger.error('Failed to terminate telemetry services', exception);
69
+ }
70
+ };
71
+ exports.terminate = terminate;
71
72
  exports.prometheus = {
72
73
  register: _prometheus.register,
73
74
  metrics: _prometheus.metrics,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAkC;AAClC,kDAAoC;AACpC,4DAA8C;AAC9C,kEAAoD;AACpD,8CAAgC;AAChC,sDAAwC;AAExC,IAAI,aAAa,GAAG,KAAK,CAAC;AAE1B,MAAM,SAAS,GAAG,KAAK,IAAmB,EAAE;IAC1C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,MAAM,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClD,aAAa,GAAG,KAAK,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,SAAS,CAAC,CAAC;IACpE,CAAC;AACH,CAAC,CAAC;AAEK,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;IAC5C,IAAI,aAAa;QAAE,OAAO;IAE1B,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAC/C,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B;IACxE,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QAC5C,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;KAC3C,CAAC,CAAC;IACH,eAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IACzE,aAAa,GAAG,IAAI,CAAC;IACrB,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;AAChD,CAAC,CAAC;AAbW,QAAA,IAAI,QAaf;AAEW,QAAA,UAAU,GAAG;IACxB,QAAQ,EAAE,WAAW,CAAC,QAAQ;IAC9B,OAAO,EAAE,WAAW,CAAC,OAAO;CAC7B,CAAC;AAEW,QAAA,OAAO,GAAG;IACrB,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB;CACpD,CAAC;AAEW,QAAA,IAAI,GAAG;IAClB,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,YAAY,EAAE,OAAO,CAAC,YAAY;CACnC,CAAC;AAEW,QAAA,IAAI,GAAG;IAClB,GAAG,EAAE,KAAK,CAAC,GAAG;CACf,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,8CAAgC;AAChC,6BAA6B;AAE7B,kDAAoC;AACpC,4DAA8C;AAC9C,kEAAoD;AACpD,sDAAwC;AAExC,IAAI,aAAa,GAAG,KAAK,CAAC;AAEnB,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;IAC5C,IAAI,aAAa;QAAE,OAAO;IAE1B,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAC/C,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QAC5C,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;KAC3C,CAAC,CAAC;IACH,aAAa,GAAG,IAAI,CAAC;IACrB,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;AAChD,CAAC,CAAC;AAZW,QAAA,IAAI,QAYf;AAEK,MAAM,SAAS,GAAG,KAAK,IAAmB,EAAE;IACjD,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,MAAM,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClD,aAAa,GAAG,KAAK,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,SAAS,CAAC,CAAC;IACpE,CAAC;AACH,CAAC,CAAC;AAVW,QAAA,SAAS,aAUpB;AAEW,QAAA,UAAU,GAAG;IACxB,QAAQ,EAAE,WAAW,CAAC,QAAQ;IAC9B,OAAO,EAAE,WAAW,CAAC,OAAO;CAC7B,CAAC;AAEW,QAAA,OAAO,GAAG;IACrB,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB;CACpD,CAAC;AAEW,QAAA,IAAI,GAAG;IAClB,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,YAAY,EAAE,OAAO,CAAC,YAAY;CACnC,CAAC;AAEW,QAAA,IAAI,GAAG;IAClB,GAAG,EAAE,KAAK,CAAC,GAAG;CACf,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
- import { init } from './index';
2
+ import { init } from './index.js';
3
3
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
4
4
  // @ts-ignore
5
5
  await init();
6
- //# sourceMappingURL=import.mjs.map
6
+ //# sourceMappingURL=init.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.mjs","sourceRoot":"","sources":["../src/init.mts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC,6DAA6D;AAC7D,aAAa;AACb,MAAM,IAAI,EAAE,CAAC"}
@@ -1,4 +1,3 @@
1
1
  export declare const config: {
2
2
  readonly enabled: boolean;
3
- readonly serviceName: string | undefined;
4
3
  };
@@ -3,6 +3,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.config = void 0;
4
4
  exports.config = {
5
5
  enabled: process.env['CF_TELEMETRY_OTEL_ENABLE'] === 'true',
6
- serviceName: process.env['CF_TELEMETRY_SERVICE_NAME'],
7
6
  };
8
7
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/otel/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG;IACpB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,KAAK,MAAM;IAC3D,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;CAC7C,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/otel/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG;IACpB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,KAAK,MAAM;CACnD,CAAC"}
package/dist/otel/sdk.js CHANGED
@@ -8,11 +8,17 @@ const core_1 = require("@opentelemetry/core");
8
8
  const exporter_prometheus_1 = require("@opentelemetry/exporter-prometheus");
9
9
  const exporter_trace_otlp_grpc_1 = require("@opentelemetry/exporter-trace-otlp-grpc");
10
10
  const propagator_b3_1 = require("@opentelemetry/propagator-b3");
11
+ const resources_1 = require("@opentelemetry/resources");
11
12
  const sdk_node_1 = require("@opentelemetry/sdk-node");
12
13
  const sdk_trace_base_1 = require("@opentelemetry/sdk-trace-base");
13
- const config_1 = require("./config");
14
+ const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
15
+ const global_config_1 = require("../global-config");
14
16
  exports.sdk = new sdk_node_1.NodeSDK({
15
- serviceName: config_1.config.serviceName,
17
+ serviceName: global_config_1.globalConfig.serviceName,
18
+ resource: new resources_1.Resource({
19
+ [semantic_conventions_1.ATTR_SERVICE_NAME]: global_config_1.globalConfig.serviceName,
20
+ [semantic_conventions_1.ATTR_SERVICE_VERSION]: global_config_1.globalConfig.serviceVersion,
21
+ }),
16
22
  metricReader: new exporter_prometheus_1.PrometheusExporter(),
17
23
  spanProcessors: [
18
24
  new sdk_trace_base_1.BatchSpanProcessor(new exporter_trace_otlp_grpc_1.OTLPTraceExporter()),
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/otel/sdk.ts"],"names":[],"mappings":";;;AAAA,0FAAwF;AACxF,kFAAqG;AACrG,4EAAqF;AACrF,8CAA2G;AAC3G,4EAAwE;AACxE,sFAA4E;AAC5E,gEAA8E;AAC9E,sDAAkD;AAClD,kEAAmE;AACnE,qCAAkC;AAErB,QAAA,GAAG,GAAG,IAAI,kBAAO,CAAC;IAC7B,WAAW,EAAE,eAAM,CAAC,WAAW;IAC/B,YAAY,EAAE,IAAI,wCAAkB,EAAE;IACtC,cAAc,EAAE;QACd,IAAI,mCAAkB,CAAC,IAAI,4CAAiB,EAAE,CAAC;QAC/C,wDAAwD;QACxD,IAAI,6CAAoB,CAAC,+CAAsB,CAAC;KACjD;IACD,cAAc,EAAE,IAAI,qDAA+B,EAAE;IACrD,iBAAiB,EAAE,IAAI,0BAAmB,CAAC;QACzC,WAAW,EAAE;YACX,IAAI,gCAAyB,EAAE;YAC/B,IAAI,2BAAoB,EAAE;YAC1B,IAAI,4BAAY,EAAE;YAClB,IAAI,4BAAY,CAAC;gBACf,cAAc,EAAE,gCAAgB,CAAC,YAAY;aAC9C,CAAC;SACH;KACF,CAAC;IACF,gBAAgB,EAAE,CAAC,IAAA,wDAA2B,GAAE,CAAC;CAClD,CAAC,CAAC"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/otel/sdk.ts"],"names":[],"mappings":";;;AAAA,0FAAwF;AACxF,kFAAqG;AACrG,4EAAqF;AACrF,8CAA2G;AAC3G,4EAAwE;AACxE,sFAA4E;AAC5E,gEAA8E;AAC9E,wDAAoD;AACpD,sDAAkD;AAClD,kEAAmE;AACnE,8EAA8F;AAC9F,oDAAgD;AAEnC,QAAA,GAAG,GAAG,IAAI,kBAAO,CAAC;IAC7B,WAAW,EAAE,4BAAY,CAAC,WAAW;IACrC,QAAQ,EAAE,IAAI,oBAAQ,CAAC;QACrB,CAAC,wCAAiB,CAAC,EAAE,4BAAY,CAAC,WAAW;QAC7C,CAAC,2CAAoB,CAAC,EAAE,4BAAY,CAAC,cAAc;KACpD,CAAC;IACF,YAAY,EAAE,IAAI,wCAAkB,EAAE;IACtC,cAAc,EAAE;QACd,IAAI,mCAAkB,CAAC,IAAI,4CAAiB,EAAE,CAAC;QAC/C,wDAAwD;QACxD,IAAI,6CAAoB,CAAC,+CAAsB,CAAC;KACjD;IACD,cAAc,EAAE,IAAI,qDAA+B,EAAE;IACrD,iBAAiB,EAAE,IAAI,0BAAmB,CAAC;QACzC,WAAW,EAAE;YACX,IAAI,gCAAyB,EAAE;YAC/B,IAAI,2BAAoB,EAAE;YAC1B,IAAI,4BAAY,EAAE;YAClB,IAAI,4BAAY,CAAC;gBACf,cAAc,EAAE,gCAAgB,CAAC,YAAY;aAC9C,CAAC;SACH;KACF,CAAC;IACF,gBAAgB,EAAE,CAAC,IAAA,wDAA2B,GAAE,CAAC;CAClD,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codefresh-io/cf-telemetry",
3
- "version": "2.0.0-alpha.3",
3
+ "version": "2.0.0-alpha.4",
4
4
  "main": "dist/index.js",
5
5
  "files": [
6
6
  "dist/**/*"
package/dist/config.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export declare const config: {
2
- readonly terminateSignals: string[];
3
- };
package/dist/config.js DELETED
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.config = void 0;
4
- exports.config = {
5
- terminateSignals: process.env['CF_TELEMETRY_TERMINATE_SIGNALS']?.split(',') ?? ['SIGINT', 'SIGTERM'],
6
- };
7
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG;IACpB,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC;CAC5F,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"import.mjs","sourceRoot":"","sources":["../src/import.mts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,6DAA6D;AAC7D,aAAa;AACb,MAAM,IAAI,EAAE,CAAC"}
File without changes