@codefresh-io/cf-telemetry 2.0.0 → 2.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.
@@ -1,4 +1,5 @@
1
1
  export declare const globalConfig: {
2
2
  readonly serviceName: string;
3
3
  readonly serviceVersion: string;
4
+ readonly libLogScope: "cf-telemetry";
4
5
  };
@@ -5,5 +5,6 @@ exports.globalConfig = void 0;
5
5
  exports.globalConfig = {
6
6
  serviceName: process.env['CF_SERVICE_NAME'] || 'unknown_service:node',
7
7
  serviceVersion: process.env['CF_SERVICE_VERSION'] || 'unknown',
8
+ libLogScope: 'cf-telemetry',
8
9
  };
9
10
  //# sourceMappingURL=global-config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"global-config.js","sourceRoot":"","sources":["../src/global-config.ts"],"names":[],"mappings":";;;AAAA,iEAAiE;AACpD,QAAA,YAAY,GAAG;IAC1B,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,sBAAsB;IACrE,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,SAAS;CACtD,CAAC"}
1
+ {"version":3,"file":"global-config.js","sourceRoot":"","sources":["../src/global-config.ts"],"names":[],"mappings":";;;AAAA,iEAAiE;AACpD,QAAA,YAAY,GAAG;IAC1B,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,sBAAsB;IACrE,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,SAAS;IAC9D,WAAW,EAAE,cAAc;CACnB,CAAC"}
package/dist/init.js CHANGED
@@ -49,7 +49,7 @@ const init = () => {
49
49
  if (isInitialized)
50
50
  return;
51
51
  try {
52
- const logger = new logs.Logger('telemetry');
52
+ const logger = new logs.Logger(global_config_1.globalConfig.libLogScope);
53
53
  logger.info('Initializing telemetry services');
54
54
  logger.debug('Telemetry configuration', global_config_1.globalConfig);
55
55
  otel.init(logger);
@@ -63,7 +63,7 @@ const init = () => {
63
63
  }
64
64
  };
65
65
  const terminate = async () => {
66
- const logger = new logs.Logger('telemetry');
66
+ const logger = new logs.Logger(global_config_1.globalConfig.libLogScope);
67
67
  try {
68
68
  logger.info('Terminating telemetry services');
69
69
  await otel.terminate(logger).catch(logger.error);
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,6CAA+B;AAC/B,6BAA6B;AAE7B,mDAA+C;AAC/C,6CAA+B;AAC/B,iEAAmD;AACnD,qDAAuC;AAEvC,IAAI,aAAa,GAAG,KAAK,CAAC;AAE1B;;;GAGG;AACH,MAAM,IAAI,GAAG,GAAS,EAAE;IACtB,IAAI,aAAa;QAAE,OAAO;IAE1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC/C,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,4BAAY,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5C,aAAa,GAAG,IAAI,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,KAAK,IAAmB,EAAE;IAC1C,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrD,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;AAEF,IAAI,EAAE,CAAC;AAEP,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAChC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AACjC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,6CAA+B;AAC/B,6BAA6B;AAE7B,mDAA+C;AAC/C,6CAA+B;AAC/B,iEAAmD;AACnD,qDAAuC;AAEvC,IAAI,aAAa,GAAG,KAAK,CAAC;AAE1B;;;GAGG;AACH,MAAM,IAAI,GAAG,GAAS,EAAE;IACtB,IAAI,aAAa;QAAE,OAAO;IAE1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,4BAAY,CAAC,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC/C,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,4BAAY,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5C,aAAa,GAAG,IAAI,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,KAAK,IAAmB,EAAE;IAC1C,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,4BAAY,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrD,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;AAEF,IAAI,EAAE,CAAC;AAEP,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAChC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AACjC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC"}
@@ -1,8 +1,2 @@
1
- export declare const config: {
2
- readonly level: "debug" | "info" | "warn" | "error";
3
- readonly shouldPrettify: boolean;
4
- readonly sync: boolean;
5
- readonly defaultInitiator: {
6
- type: string;
7
- };
8
- };
1
+ import { LogsConfig } from './types';
2
+ export declare const config: LogsConfig;
@@ -2,14 +2,33 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.config = void 0;
4
4
  const types_1 = require("./types");
5
- const detectedLevel = process.env['CF_TELEMETRY_LOGS_LEVEL'] ?? 'info';
6
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
7
- const isKnownLevel = types_1.Level.includes(detectedLevel);
8
- if (!isKnownLevel)
9
- console.warn(`Unknown log level: ${detectedLevel}. Defaulting to 'info'.`);
5
+ const getLevel = () => {
6
+ const detectedLevel = process.env['CF_TELEMETRY_LOGS_LEVEL'] ?? 'info';
7
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
8
+ const isKnownLevel = types_1.Level.includes(detectedLevel);
9
+ if (!isKnownLevel) {
10
+ console.warn(`Unknown value for 'CF_TELEMETRY_LOGS_LEVEL': "${detectedLevel}". Defaulting to 'info'. Allowed values: ${types_1.Level.join('|')}.`);
11
+ return 'info';
12
+ }
13
+ ;
14
+ return detectedLevel;
15
+ };
16
+ const getPrettify = () => {
17
+ const prettify = process.env['CF_TELEMETRY_LOGS_PRETTIFY'];
18
+ switch (prettify) {
19
+ case 'single-line':
20
+ case 'multi-line':
21
+ return prettify;
22
+ case 'false':
23
+ return false;
24
+ default:
25
+ console.warn(`Unknown value for 'CF_TELEMETRY_LOGS_PRETTIFY': "${prettify}". Defaulting to false. Allowed values: ${types_1.Prettify.join('|')}.`);
26
+ return false;
27
+ }
28
+ };
10
29
  exports.config = {
11
- level: isKnownLevel ? detectedLevel : 'info',
12
- shouldPrettify: process.env['CF_TELEMETRY_LOGS_PRETTIFY'] === 'true',
30
+ level: getLevel(),
31
+ prettify: getPrettify(),
13
32
  sync: process.env['CF_TELEMETRY_LOGS_SYNC'] === 'true',
14
33
  defaultInitiator: { type: 'system' },
15
34
  };
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/logs/config.ts"],"names":[],"mappings":";;;AAAA,mCAA6C;AAE7C,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,MAAM,CAAC;AACvE,8DAA8D;AAC9D,MAAM,YAAY,GAAG,aAAK,CAAC,QAAQ,CAAC,aAAoB,CAAC,CAAC;AAC1D,IAAI,CAAC,YAAY;IAAE,OAAO,CAAC,IAAI,CAAC,sBAAsB,aAAa,yBAAyB,CAAC,CAAC;AAEjF,QAAA,MAAM,GAAG;IACpB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,aAAsB,CAAC,CAAC,CAAC,MAAM;IACrD,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,KAAK,MAAM;IACpE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,KAAK,MAAM;IACtD,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAqC;CAC/D,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/logs/config.ts"],"names":[],"mappings":";;;AAAA,mCAAsD;AAEtD,MAAM,QAAQ,GAAG,GAAU,EAAE;IAC3B,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,MAAM,CAAC;IACvE,8DAA8D;IAC9D,MAAM,YAAY,GAAG,aAAK,CAAC,QAAQ,CAAC,aAAoB,CAAC,CAAC;IAC1D,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,iDAAiD,aAAa,4CAA4C,aAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3I,OAAO,MAAM,CAAC;IAChB,CAAC;IAAA,CAAC;IACF,OAAO,aAAsB,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,GAAa,EAAE;IACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC3D,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY;YACf,OAAO,QAAQ,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,KAAK,CAAC;QACf;YACE,OAAO,CAAC,IAAI,CAAC,oDAAoD,QAAQ,2CAA2C,gBAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC3I,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AAEW,QAAA,MAAM,GAAe;IAChC,KAAK,EAAE,QAAQ,EAAE;IACjB,QAAQ,EAAE,WAAW,EAAE;IACvB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,KAAK,MAAM;IACtD,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;CAC5B,CAAC"}
@@ -15,29 +15,21 @@ class Logger {
15
15
  this.#options = typeof options === 'string' ? { scope: options } : options;
16
16
  this.#baseLogger = (0, pino_1.default)({
17
17
  level: config_1.config.level,
18
- base: null,
18
+ /**
19
+ * Set to `undefined` to disable default pino metadata.
20
+ * Docs: https://github.com/pinojs/pino/blob/main/docs/api.md#base-object
21
+ */
22
+ base: undefined,
19
23
  formatters: {
20
24
  level: label => ({ level: label }),
21
25
  },
22
- serializers: {
23
- data: (data) => {
24
- if (typeof data === 'object' && data !== null) {
25
- if ('err' in data && data.err instanceof Error) {
26
- data.err = pino_1.default.stdSerializers.err(data.err);
27
- }
28
- else if ('error' in data && data.error instanceof Error) {
29
- data.error = pino_1.default.stdSerializers.err(data.error);
30
- }
31
- }
32
- return data;
33
- },
34
- },
35
- ...config_1.config.shouldPrettify && {
26
+ ...config_1.config.prettify && {
27
+ name: this.#options.scope,
36
28
  transport: {
37
29
  target: 'pino-pretty',
38
30
  options: {
39
31
  colorize: true,
40
- translateTime: 'UTC:yyyy-mm-dd HH:MM:ss.l o',
32
+ singleLine: config_1.config.prettify === 'single-line',
41
33
  },
42
34
  },
43
35
  },
@@ -77,8 +69,25 @@ class Logger {
77
69
  }
78
70
  else {
79
71
  body.msg = msgOrErr;
80
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
81
- body[data && data instanceof Error ? 'err' : 'data'] = data;
72
+ if (data && data instanceof Error) {
73
+ body.err = data;
74
+ }
75
+ else if (data && typeof data === 'object') {
76
+ body.data = { ...data }; // shallow clone to avoid mutation while deleting props
77
+ // @ts-expect-error: TS is unable to narrow type, while we know that `data` is an object
78
+ if ('err' in body.data) {
79
+ body.err = body.data.err;
80
+ delete body.data.err;
81
+ // @ts-expect-error: TS is unable to narrow type, while we know that `data` is an object
82
+ }
83
+ else if ('error' in body.data) {
84
+ body.err = body.data.error;
85
+ delete body.data.error;
86
+ }
87
+ }
88
+ else {
89
+ body.data = data;
90
+ }
82
91
  }
83
92
  return this.#baseLogger[level](body);
84
93
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logs/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logs/logger.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
1
  import type { LoggerService } from '@nestjs/common';
2
2
  export declare const Level: readonly ["debug", "info", "warn", "error"];
3
3
  export type Level = (typeof Level[number]);
4
+ export declare const Prettify: readonly ["single-line", "multi-line", false];
5
+ export type Prettify = (typeof Prettify[number]);
6
+ export interface LogsConfig {
7
+ level: Level;
8
+ prettify: Prettify;
9
+ sync: boolean;
10
+ defaultInitiator: LogMetadata['initiator'];
11
+ }
4
12
  /**
5
13
  * Scope name to be used for all log lines.
6
14
  */
@@ -75,7 +83,7 @@ export interface LogMetadata {
75
83
  export interface LogBody {
76
84
  msg?: LogMessage;
77
85
  data?: LogData;
78
- err?: Error;
86
+ err?: unknown;
79
87
  cf: LogMetadata;
80
88
  scope_name?: Scope;
81
89
  }
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Level = void 0;
3
+ exports.Prettify = exports.Level = void 0;
4
4
  exports.Level = ['debug', 'info', 'warn', 'error'];
5
+ exports.Prettify = ['single-line', 'multi-line', false];
6
+ ;
5
7
  ;
6
8
  ;
7
9
  ;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/logs/types.ts"],"names":[],"mappings":";;;AAEa,QAAA,KAAK,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;AAqBhE,CAAC;AAQD,CAAC;AAWD,CAAC;AAsCD,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/logs/types.ts"],"names":[],"mappings":";;;AAEa,QAAA,KAAK,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;AAGpD,QAAA,QAAQ,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,KAAK,CAAU,CAAC;AAQrE,CAAC;AAoBD,CAAC;AAQD,CAAC;AAWD,CAAC;AAsCD,CAAC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.monitorMongoDBClient = void 0;
4
4
  const mongodb_driver_prometheus_exporter_1 = require("@christiangalsterer/mongodb-driver-prometheus-exporter");
5
+ const global_config_1 = require("../../global-config");
5
6
  const logs_1 = require("../../logs");
6
7
  const prometheus_1 = require("../prometheus");
7
8
  const WarningCauses = {
@@ -27,7 +28,7 @@ const monitoredClientsByPool = new Map();
27
28
  * @param [connectionPool] Unique per application connection pool name, default is `"main"`. Required if you have multiple clients to monitor.
28
29
  */
29
30
  const monitorMongoDBClient = (client, connectionPool = 'main') => {
30
- const logger = new logs_1.Logger('monitoring:mongodb');
31
+ const logger = new logs_1.Logger(`${global_config_1.globalConfig.libLogScope}:mongodb`);
31
32
  logger.info(`Initializing MongoDB monitoring for connection pool: ${connectionPool}`);
32
33
  if (monitoredClients.has(client)) {
33
34
  instrumentationWarnings.inc({ cause: WarningCauses.AlreadyMonitored, connection_pool: connectionPool });
@@ -1 +1 @@
1
- {"version":3,"file":"monitor-mongodb-client.js","sourceRoot":"","sources":["../../../src/metrics/mongodb/monitor-mongodb-client.ts"],"names":[],"mappings":";;;AAAA,+GAA8F;AAE9F,qCAAoC;AACpC,8CAAkD;AAElD,MAAM,aAAa,GAAG;IACpB,gBAAgB,EAAE,0BAA0B;IAC5C,sBAAsB,EAAE,2BAA2B;CAC3C,CAAC;AAEX,MAAM,uBAAuB,GAAG,IAAI,oBAAO,CAAC,OAAO,CAAC;IAClD,IAAI,EAAE,kDAAkD;IACxD,IAAI,EAAE,6DAA6D;IACnE,UAAU,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC;CACzC,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAe,CAAC;AACpD,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAgC,CAAC;AAEvE;;;;;;;;;;GAUG;AACI,MAAM,oBAAoB,GAAG,CAAC,MAAmB,EAAE,cAAc,GAAG,MAAM,EAAE,EAAE;IACnF,MAAM,MAAM,GAAG,IAAI,aAAM,CAAC,oBAAoB,CAAC,CAAC;IAChD,MAAM,CAAC,IAAI,CAAC,wDAAwD,cAAc,EAAE,CAAC,CAAC;IACtF,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,uBAAuB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,CAAC;QACxG,MAAM,CAAC,IAAI,CAAC,iEAAiE,cAAc,EAAE,CAAC,CAAC;QAC/F,OAAO;IACT,CAAC;IACD,MAAM,6BAA6B,GAAG,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC;IAC5F,IAAI,6BAA6B,EAAE,CAAC;QAClC,uBAAuB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,sBAAsB,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,CAAC;QAC9G,MAAM,CAAC,IAAI,CAAC,4HAA4H,cAAc,GAAG,CAAC,CAAC;IAC7J,CAAC;IAED,sBAAsB,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAChE,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,IAAA,yDAAoB,EAClB,MAAM,EACN,qBAAQ,EACR;QACE,aAAa,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE;QAClD,MAAM;KACP,CACF,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,uDAAuD,cAAc,EAAE,CAAC,CAAC;AACvF,CAAC,CAAC;AAzBW,QAAA,oBAAoB,wBAyB/B"}
1
+ {"version":3,"file":"monitor-mongodb-client.js","sourceRoot":"","sources":["../../../src/metrics/mongodb/monitor-mongodb-client.ts"],"names":[],"mappings":";;;AAAA,+GAA8F;AAE9F,uDAAmD;AACnD,qCAAoC;AACpC,8CAAkD;AAElD,MAAM,aAAa,GAAG;IACpB,gBAAgB,EAAE,0BAA0B;IAC5C,sBAAsB,EAAE,2BAA2B;CAC3C,CAAC;AAEX,MAAM,uBAAuB,GAAG,IAAI,oBAAO,CAAC,OAAO,CAAC;IAClD,IAAI,EAAE,kDAAkD;IACxD,IAAI,EAAE,6DAA6D;IACnE,UAAU,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC;CACzC,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAe,CAAC;AACpD,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAgC,CAAC;AAEvE;;;;;;;;;;GAUG;AACI,MAAM,oBAAoB,GAAG,CAAC,MAAmB,EAAE,cAAc,GAAG,MAAM,EAAE,EAAE;IACnF,MAAM,MAAM,GAAG,IAAI,aAAM,CAAC,GAAG,4BAAY,CAAC,WAAW,UAAU,CAAC,CAAC;IACjE,MAAM,CAAC,IAAI,CAAC,wDAAwD,cAAc,EAAE,CAAC,CAAC;IACtF,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,uBAAuB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,CAAC;QACxG,MAAM,CAAC,IAAI,CAAC,iEAAiE,cAAc,EAAE,CAAC,CAAC;QAC/F,OAAO;IACT,CAAC;IACD,MAAM,6BAA6B,GAAG,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,CAAC;IAC5F,IAAI,6BAA6B,EAAE,CAAC;QAClC,uBAAuB,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,sBAAsB,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC,CAAC;QAC9G,MAAM,CAAC,IAAI,CAAC,4HAA4H,cAAc,GAAG,CAAC,CAAC;IAC7J,CAAC;IAED,sBAAsB,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAChE,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,IAAA,yDAAoB,EAClB,MAAM,EACN,qBAAQ,EACR;QACE,aAAa,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE;QAClD,MAAM;KACP,CACF,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,uDAAuD,cAAc,EAAE,CAAC,CAAC;AACvF,CAAC,CAAC;AAzBW,QAAA,oBAAoB,wBAyB/B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codefresh-io/cf-telemetry",
3
- "version": "2.0.0",
3
+ "version": "2.1.0",
4
4
  "exports": {
5
5
  "./init": {
6
6
  "import": "./dist/init.mjs",
@@ -56,12 +56,13 @@
56
56
  "@stylistic/eslint-plugin": "^3.0.1",
57
57
  "@types/express": "^5.0.1",
58
58
  "@types/node": "^22.12.0",
59
+ "@vitest/coverage-v8": "^3.1.2",
59
60
  "eslint": "^9.19.0",
60
61
  "mongodb": "^6.13.0",
61
62
  "rimraf": "^6.0.1",
62
63
  "typescript": "^5.8.2",
63
64
  "typescript-eslint": "^8.27.0",
64
- "vitest": "^3.1.1"
65
+ "vitest": "^3.1.2"
65
66
  },
66
67
  "dependencies": {
67
68
  "@christiangalsterer/mongodb-driver-prometheus-exporter": "^2.3.0",