@golemio/core 1.2.8 → 1.2.9-dev.534259948

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,11 +1,30 @@
1
- [![pipeline status](https://gitlab.com/operator-ict/golemio/code/modules/core/badges/master/pipeline.svg)](https://gitlab.com/operator-ict/golemio/code/modules/core/commits/master)
2
- [![coverage report](https://gitlab.com/operator-ict/golemio/code/modules/core/badges/master/coverage.svg)](https://gitlab.com/operator-ict/golemio/code/modules/core/commits/master)
3
-
4
- # @golemio/core
5
-
6
- Core module of the Golemio data platform
7
-
8
- Developed by http://operatorict.cz
1
+ <div align="center">
2
+ <p>
3
+ <a href="https://operatorict.cz/">
4
+ <img src="./.assets/oict_logo.png" alt="oict" width="100px" height="100px" />
5
+ </a>
6
+ </p>
7
+
8
+ <h1>@golemio/core</h1>
9
+
10
+ <p>
11
+ <a href="https://gitlab.com/operator-ict/golemio/code/modules/core/commits/master">
12
+ <img src="https://gitlab.com/operator-ict/golemio/code/modules/core/badges/master/pipeline.svg" alt="pipeline">
13
+ </a>
14
+ <a href="https://gitlab.com/operator-ict/golemio/code/modules/core/commits/master">
15
+ <img src="https://gitlab.com/operator-ict/golemio/code/modules/core/badges/master/coverage.svg" alt="coverage">
16
+ </a>
17
+ <a href="./LICENSE">
18
+ <img src="https://img.shields.io/npm/l/@golemio/core" alt="license">
19
+ </a>
20
+ </p>
21
+
22
+ <p>
23
+ <a href="#installation">Installation</a> · <a href="./docs">Documentation</a> · <a href="https://operator-ict.gitlab.io/golemio/code/modules/core">TypeDoc</a>
24
+ </p>
25
+ </div>
26
+
27
+ This module is intended for use with Golemio services.
9
28
 
10
29
  ## Prerequisites
11
30
 
@@ -37,21 +56,25 @@ To compile typescript code into js one-time
37
56
  ```bash
38
57
  yarn run build
39
58
  ```
59
+
40
60
  or run this, to watch all changes
61
+
41
62
  ```bash
42
63
  yarn run build-watch
43
64
  ```
44
- from the application's root directory.
45
65
 
66
+ from the application's root directory.
46
67
 
47
68
  ## Usage
48
69
 
49
70
  In your project's `package.json` set dependency to @golemio/core
71
+
50
72
  ```bash
51
73
  yarn add @golemio/core --save
52
74
  ```
53
75
 
54
76
  Then import module, e.g.
77
+
55
78
  ```ts
56
79
  import * as core from "@golemio/core";
57
80
  ```
@@ -61,17 +84,22 @@ import * as core from "@golemio/core";
61
84
  For the local development use the [yarn link]() to link the @golemio/core with other service e.g. `@golemio/integration-engine` or module e.g. `@golemio/pid`.
62
85
 
63
86
  At the @golemio/core root directory:
87
+
64
88
  ```bash
65
89
  yarn link
66
90
  yarn build-watch
67
91
  ```
92
+
68
93
  At the @golemio/pid root directory:
94
+
69
95
  ```bash
70
96
  yarn link "@golemio/core"
71
97
  yarn link
72
98
  yarn build-watch
73
99
  ```
100
+
74
101
  At the @golemio/integration-engine root directory:
102
+
75
103
  ```bash
76
104
  yarn link "@golemio/core"
77
105
  yarn link "@golemio/pid"
@@ -90,7 +118,6 @@ yarn test
90
118
 
91
119
  from the application's root directory. All tests should pass.
92
120
 
93
-
94
121
  ## Rabbit MQ
95
122
 
96
123
  Core module defines main exchange in rabbit mq and its name is dependent on .env setting. Also it contains definition of queue for dead messages. All other queues are defined in separate modules and loaded dynamically by `QueueProcessor.ts`.
@@ -3,11 +3,17 @@ import amqplib from "amqplib";
3
3
  export declare class QueueProcessor {
4
4
  protected channel: amqplib.Channel;
5
5
  private definition;
6
+ private consumers;
7
+ private isGracefulShutdown;
6
8
  constructor(channel: amqplib.Channel, definition: IQueueDefinition);
7
9
  /**
8
10
  * Registering all queues from definition
9
11
  */
10
12
  registerQueues: () => Promise<void>;
13
+ /**
14
+ * Cancel all registered consumers before shutting down
15
+ */
16
+ cancelConsumers: () => Promise<void>;
11
17
  /**
12
18
  * Default queue processor
13
19
  */
@@ -33,7 +33,7 @@ class QueueProcessor {
33
33
  // default processor
34
34
  yield this.defaultProcessor(msg, q.name, () => __awaiter(this, void 0, void 0, function* () {
35
35
  if (!q.worker || !q.workerMethod) {
36
- throw new errors_1.CustomError("[AMQP] Worker and worker method must be defined.", false, this.constructor.name, 5005);
36
+ throw new errors_1.CustomError("[AMQP QueueProcessor] Worker and worker method must be defined.", false, this.constructor.name, 5005);
37
37
  }
38
38
  const w = new q.worker();
39
39
  yield (0, sentry_transactions_1.withSentryConsumerTrace)(w[q.workerMethod].bind(w))(msg);
@@ -43,12 +43,29 @@ class QueueProcessor {
43
43
  });
44
44
  yield Promise.all(promises);
45
45
  });
46
+ /**
47
+ * Cancel all registered consumers before shutting down
48
+ */
49
+ this.cancelConsumers = () => __awaiter(this, void 0, void 0, function* () {
50
+ helpers_1.log.info("[AMQP QueueProcessor] Expecting a shutdown. Cancelling all consumer operations");
51
+ this.isGracefulShutdown = true;
52
+ // Cancel all consumer operations
53
+ for (const consumerTag of this.consumers.values()) {
54
+ yield this.channel.cancel(consumerTag);
55
+ }
56
+ });
46
57
  /**
47
58
  * Default queue processor
48
59
  */
49
60
  this.defaultProcessor = (msg, name, worker) => __awaiter(this, void 0, void 0, function* () {
50
61
  try {
51
62
  helpers_1.log.verbose("[>] " + this.definition.queuePrefix + "." + name + ": received some data.");
63
+ // Expect to requeue the message before shutting down
64
+ if (this.isGracefulShutdown) {
65
+ this.channel.nack(msg, false, true);
66
+ helpers_1.log.verbose("[<] " + this.definition.queuePrefix + "." + name + ": requeued");
67
+ return;
68
+ }
52
69
  yield worker();
53
70
  this.channel.ack(msg);
54
71
  helpers_1.log.verbose("[<] " + this.definition.queuePrefix + "." + name + ": done");
@@ -83,10 +100,13 @@ class QueueProcessor {
83
100
  yield this.channel.bindQueue(q.queue, config_1.config.RABBIT_EXCHANGE_NAME, key);
84
101
  helpers_1.log.verbose("[*] Waiting for messages in " + name + ". {key " + key + "}");
85
102
  // Listen and consume messages in queue
86
- yield this.channel.consume(name, processor, { noAck: false });
103
+ const { consumerTag } = yield this.channel.consume(name, processor, { noAck: false });
104
+ this.consumers.add(consumerTag);
87
105
  });
88
106
  this.channel = channel;
89
107
  this.definition = definition;
108
+ this.consumers = new Set();
109
+ this.isGracefulShutdown = false;
90
110
  }
91
111
  }
92
112
  exports.QueueProcessor = QueueProcessor;
@@ -1 +1 @@
1
- {"version":3,"file":"QueueProcessor.js","sourceRoot":"","sources":["../../../src/integration-engine/queueprocessors/QueueProcessor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueueProcessor.js","sourceRoot":"","sources":["../../../src/integration-engine/queueprocessors/QueueProcessor.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { AmqplibInstrumentationConfig } from "opentelemetry-instrumentation-amqplib";
1
+ import { AmqplibInstrumentationConfig } from "@opentelemetry/instrumentation-amqplib";
2
2
  export declare const amqplibConfig: AmqplibInstrumentationConfig;
@@ -3,15 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.amqplibConfig = void 0;
4
4
  const helpers_1 = require("../helpers");
5
5
  const extended_attributes_1 = require("../extended-attributes");
6
- const amqplibConsumeEndHook = (span, _msg, _rejected, endOperation) => {
7
- span.setAttribute(extended_attributes_1.AmqplibExtendedAttribute.CONSUME_END_OPERATION, endOperation);
6
+ const amqplibConsumeEndHook = (span, consumeEndInfo) => {
7
+ span.setAttribute(extended_attributes_1.AmqplibExtendedAttribute.CONSUME_END_OPERATION, consumeEndInfo.endOperation);
8
8
  };
9
- const amqplibPublishCustomAttributeFunction = (span, publishParams) => {
10
- const module = publishParams.routingKey.split(".").slice(-2, -1)[0];
9
+ const amqplibPublishCustomAttributeFunction = (span, publishInfo) => {
10
+ const module = publishInfo.routingKey.split(".").slice(-2, -1)[0];
11
11
  span.setAttribute("service.module", module);
12
12
  };
13
- const amqplibConsumerCustomAttributeFunction = (span, msg) => {
14
- const module = msg === null || msg === void 0 ? void 0 : msg.fields.routingKey.split(".").slice(-2, -1)[0];
13
+ const amqplibConsumerCustomAttributeFunction = (span, consumeInfo) => {
14
+ var _a;
15
+ const module = (_a = consumeInfo.msg) === null || _a === void 0 ? void 0 : _a.fields.routingKey.split(".").slice(-2, -1)[0];
15
16
  if (module) {
16
17
  span.setAttribute("service.module", module);
17
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"amqplib.js","sourceRoot":"","sources":["../../../../../src/monitoring/opentelemetry/instrumentation/configs/amqplib.ts"],"names":[],"mappings":";;;AASA,wCAA+C;AAC/C,gEAAkE;AAElE,MAAM,qBAAqB,GAA8C,CACrE,IAAU,EACV,IAA2B,EAC3B,SAAkB,EAClB,YAA0B,EACtB,EAAE;IACN,IAAI,CAAC,YAAY,CAAC,8CAAwB,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;AACpF,CAAC,CAAC;AAEF,MAAM,qCAAqC,GAA0C,CACjF,IAAU,EACV,aAA4B,EACxB,EAAE;IACN,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC,CAAC;AAEF,MAAM,sCAAsC,GAA2C,CACnF,IAAU,EACV,GAA0B,EACtB,EAAE;IACN,MAAM,MAAM,GAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClE,IAAI,MAAM,EAAE;QACR,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;KAC/C;AACL,CAAC,CAAC;AAEW,QAAA,aAAa,GAAiC;IACvD,WAAW,EAAE,IAAA,2BAAiB,EAAC,sCAAsC,CAAC;IACtE,WAAW,EAAE,IAAA,2BAAiB,EAAC,qCAAqC,CAAC;IACrE,cAAc,EAAE,IAAA,2BAAiB,EAAC,qBAAqB,CAAC;CAC3D,CAAC"}
1
+ {"version":3,"file":"amqplib.js","sourceRoot":"","sources":["../../../../../src/monitoring/opentelemetry/instrumentation/configs/amqplib.ts"],"names":[],"mappings":";;;AAUA,wCAA+C;AAC/C,gEAAkE;AAElE,MAAM,qBAAqB,GAA6C,CAAC,IAAU,EAAE,cAA8B,EAAQ,EAAE;IACzH,IAAI,CAAC,YAAY,CAAC,8CAAwB,CAAC,qBAAqB,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;AACnG,CAAC,CAAC;AAEF,MAAM,qCAAqC,GAA0C,CACjF,IAAU,EACV,WAAwB,EACpB,EAAE;IACN,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC,CAAC;AAEF,MAAM,sCAAsC,GAA0C,CAClF,IAAU,EACV,WAEC,EACG,EAAE;;IACN,MAAM,MAAM,GAAG,MAAA,WAAW,CAAC,GAAG,0CAAE,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9E,IAAI,MAAM,EAAE;QACR,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;KAC/C;AACL,CAAC,CAAC;AAEW,QAAA,aAAa,GAAiC;IACvD,WAAW,EAAE,IAAA,2BAAiB,EAAC,sCAAsC,CAAC;IACtE,WAAW,EAAE,IAAA,2BAAiB,EAAC,qCAAqC,CAAC;IACrE,cAAc,EAAE,IAAA,2BAAiB,EAAC,qBAAqB,CAAC;CAC3D,CAAC"}
@@ -1,2 +1,2 @@
1
- import { AwsSdkInstrumentationConfig } from "opentelemetry-instrumentation-aws-sdk";
1
+ import { AwsSdkInstrumentationConfig } from "@opentelemetry/instrumentation-aws-sdk";
2
2
  export declare const awsSdkConfig: AwsSdkInstrumentationConfig;
@@ -18,8 +18,8 @@ const getWhitelistedParams = (serviceName, requestParams) => {
18
18
  return whiteList;
19
19
  }, {});
20
20
  };
21
- const awsSdkPreRequestHook = (span, request) => {
22
- const paramsToAttach = getWhitelistedParams(request.serviceName, request.commandInput);
21
+ const awsSdkPreRequestHook = (span, requestInfo) => {
22
+ const paramsToAttach = getWhitelistedParams(requestInfo.request.serviceName, requestInfo.request.commandInput);
23
23
  if (paramsToAttach) {
24
24
  try {
25
25
  span.setAttribute(extended_attributes_1.AwsSdkExtendedAttribute.AWS_REQUEST_PARAMS, JSON.stringify(paramsToAttach));
@@ -1 +1 @@
1
- {"version":3,"file":"aws-sdk.js","sourceRoot":"","sources":["../../../../../src/monitoring/opentelemetry/instrumentation/configs/aws-sdk.ts"],"names":[],"mappings":";;;AAGA,wCAA+C;AAC/C,gEAAiE;AAEjE,MAAM,sBAAsB,GAA6B;IACrD,EAAE,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,qBAAqB,CAAC;CAC9D,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,WAAmB,EAAE,aAAkC,EAAmC,EAAE;IACtH,MAAM,MAAM,GAAa,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAE7D,IAAI,CAAC,MAAM,IAAI,CAAC,aAAa;QAAE,OAAO;IAEtC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,SAA8B,EAAE,SAAiB,EAAE,EAAE;QACvE,MAAM,GAAG,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,GAAG,KAAK,SAAS,EAAE;YACnB,SAAS,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;SAC9B;QACD,OAAO,SAAS,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAyC,CAAC,IAAU,EAAE,OAA0B,EAAE,EAAE;IAC1G,MAAM,cAAc,GAAG,oBAAoB,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACvF,IAAI,cAAc,EAAE;QAChB,IAAI;YACA,IAAI,CAAC,YAAY,CAAC,6CAAuB,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;SACjG;QAAC,WAAM;YACJ,SAAS;SACZ;KACJ;AACL,CAAC,CAAC;AAEW,QAAA,YAAY,GAAgC;IACrD,cAAc,EAAE,IAAA,2BAAiB,EAAC,oBAAoB,CAAC;IACvD,+BAA+B,EAAE,IAAI;CACxC,CAAC"}
1
+ {"version":3,"file":"aws-sdk.js","sourceRoot":"","sources":["../../../../../src/monitoring/opentelemetry/instrumentation/configs/aws-sdk.ts"],"names":[],"mappings":";;;AAMA,wCAA+C;AAC/C,gEAAiE;AAEjE,MAAM,sBAAsB,GAA6B;IACrD,EAAE,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,qBAAqB,CAAC;CAC9D,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,WAAmB,EAAE,aAAkC,EAAmC,EAAE;IACtH,MAAM,MAAM,GAAa,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAE7D,IAAI,CAAC,MAAM,IAAI,CAAC,aAAa;QAAE,OAAO;IAEtC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,SAA8B,EAAE,SAAiB,EAAE,EAAE;QACvE,MAAM,GAAG,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,GAAG,KAAK,SAAS,EAAE;YACnB,SAAS,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;SAC9B;QACD,OAAO,SAAS,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAyC,CAAC,IAAU,EAAE,WAAyC,EAAE,EAAE;IACzH,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/G,IAAI,cAAc,EAAE;QAChB,IAAI;YACA,IAAI,CAAC,YAAY,CAAC,6CAAuB,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC;SACjG;QAAC,WAAM;YACJ,SAAS;SACZ;KACJ;AACL,CAAC,CAAC;AAEW,QAAA,YAAY,GAAgC;IACrD,cAAc,EAAE,IAAA,2BAAiB,EAAC,oBAAoB,CAAC;IACvD,+BAA+B,EAAE,IAAI;CACxC,CAAC"}
@@ -1,9 +1,8 @@
1
- import { HttpInstrumentation } from "@opentelemetry/instrumentation-http";
2
1
  import { IORedisInstrumentation } from "@opentelemetry/instrumentation-ioredis";
3
2
  import { RedisInstrumentation } from "@opentelemetry/instrumentation-redis";
4
3
  import { ExpressInstrumentation } from "@opentelemetry/instrumentation-express";
5
4
  import { SequelizeInstrumentation } from "opentelemetry-instrumentation-sequelize";
6
5
  import { MongooseInstrumentation } from "opentelemetry-instrumentation-mongoose";
7
- import { AmqplibInstrumentation } from "opentelemetry-instrumentation-amqplib";
8
- import { AwsInstrumentation } from "opentelemetry-instrumentation-aws-sdk";
9
- export declare const getInstrumentation: () => (ExpressInstrumentation | HttpInstrumentation | SequelizeInstrumentation | MongooseInstrumentation | AmqplibInstrumentation | IORedisInstrumentation | RedisInstrumentation | AwsInstrumentation)[];
6
+ import { AmqplibInstrumentation } from "@opentelemetry/instrumentation-amqplib";
7
+ import { AwsInstrumentation } from "@opentelemetry/instrumentation-aws-sdk";
8
+ export declare const getInstrumentation: () => (ExpressInstrumentation | SequelizeInstrumentation | MongooseInstrumentation | AmqplibInstrumentation | IORedisInstrumentation | RedisInstrumentation | AwsInstrumentation)[];
@@ -1,27 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getInstrumentation = void 0;
4
- // Instrumentation
5
- const instrumentation_http_1 = require("@opentelemetry/instrumentation-http");
6
4
  const instrumentation_ioredis_1 = require("@opentelemetry/instrumentation-ioredis");
7
5
  const instrumentation_redis_1 = require("@opentelemetry/instrumentation-redis");
8
6
  const instrumentation_express_1 = require("@opentelemetry/instrumentation-express");
9
7
  const opentelemetry_instrumentation_sequelize_1 = require("opentelemetry-instrumentation-sequelize");
10
8
  const opentelemetry_instrumentation_mongoose_1 = require("opentelemetry-instrumentation-mongoose");
11
- const opentelemetry_instrumentation_amqplib_1 = require("opentelemetry-instrumentation-amqplib");
12
- const opentelemetry_instrumentation_aws_sdk_1 = require("opentelemetry-instrumentation-aws-sdk");
9
+ const instrumentation_amqplib_1 = require("@opentelemetry/instrumentation-amqplib");
10
+ const instrumentation_aws_sdk_1 = require("@opentelemetry/instrumentation-aws-sdk");
13
11
  // Configs
14
12
  const configs_1 = require("./configs");
15
13
  const getInstrumentation = () => {
16
14
  return [
17
15
  new instrumentation_express_1.ExpressInstrumentation(),
18
- new instrumentation_http_1.HttpInstrumentation(configs_1.httpConfig),
16
+ // new HttpInstrumentation(httpConfig),
19
17
  new opentelemetry_instrumentation_sequelize_1.SequelizeInstrumentation(configs_1.sequelizeConfig),
20
18
  new opentelemetry_instrumentation_mongoose_1.MongooseInstrumentation(configs_1.mongooseConfig),
21
- new opentelemetry_instrumentation_amqplib_1.AmqplibInstrumentation(configs_1.amqplibConfig),
19
+ new instrumentation_amqplib_1.AmqplibInstrumentation(configs_1.amqplibConfig),
22
20
  new instrumentation_ioredis_1.IORedisInstrumentation(),
23
21
  new instrumentation_redis_1.RedisInstrumentation(),
24
- new opentelemetry_instrumentation_aws_sdk_1.AwsInstrumentation(configs_1.awsSdkConfig),
22
+ new instrumentation_aws_sdk_1.AwsInstrumentation(configs_1.awsSdkConfig),
25
23
  ];
26
24
  };
27
25
  exports.getInstrumentation = getInstrumentation;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/monitoring/opentelemetry/instrumentation/index.ts"],"names":[],"mappings":";;;AAAA,kBAAkB;AAClB,8EAA0E;AAC1E,oFAAgF;AAChF,gFAA4E;AAC5E,oFAAgF;AAChF,qGAAmF;AACnF,mGAAiF;AACjF,iGAA+E;AAC/E,iGAA2E;AAE3E,UAAU;AACV,uCAAqG;AAE9F,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACnC,OAAO;QACH,IAAI,gDAAsB,EAAE;QAC5B,IAAI,0CAAmB,CAAC,oBAAU,CAAC;QACnC,IAAI,kEAAwB,CAAC,yBAAe,CAAC;QAC7C,IAAI,gEAAuB,CAAC,wBAAc,CAAC;QAC3C,IAAI,8DAAsB,CAAC,uBAAa,CAAC;QACzC,IAAI,gDAAsB,EAAE;QAC5B,IAAI,4CAAoB,EAAE;QAC1B,IAAI,0DAAkB,CAAC,sBAAY,CAAC;KACvC,CAAC;AACN,CAAC,CAAC;AAXW,QAAA,kBAAkB,sBAW7B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/monitoring/opentelemetry/instrumentation/index.ts"],"names":[],"mappings":";;;AAEA,oFAAgF;AAChF,gFAA4E;AAC5E,oFAAgF;AAChF,qGAAmF;AACnF,mGAAiF;AACjF,oFAAgF;AAChF,oFAA4E;AAE5E,UAAU;AACV,uCAAqG;AAE9F,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACnC,OAAO;QACH,IAAI,gDAAsB,EAAE;QAC5B,uCAAuC;QACvC,IAAI,kEAAwB,CAAC,yBAAe,CAAC;QAC7C,IAAI,gEAAuB,CAAC,wBAAc,CAAC;QAC3C,IAAI,gDAAsB,CAAC,uBAAa,CAAC;QACzC,IAAI,gDAAsB,EAAE;QAC5B,IAAI,4CAAoB,EAAE;QAC1B,IAAI,4CAAkB,CAAC,sBAAY,CAAC;KACvC,CAAC;AACN,CAAC,CAAC;AAXW,QAAA,kBAAkB,sBAW7B"}
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createChildSpan = exports.initTraceProvider = exports.JaegerProcessorType = void 0;
4
4
  const instrumentation_1 = require("@opentelemetry/instrumentation");
5
- const node_1 = require("@opentelemetry/node");
5
+ const sdk_trace_node_1 = require("@opentelemetry/sdk-trace-node");
6
6
  const resources_1 = require("@opentelemetry/resources");
7
7
  const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
8
- const tracing_1 = require("@opentelemetry/tracing");
8
+ const sdk_trace_base_1 = require("@opentelemetry/sdk-trace-base");
9
9
  const exporter_jaeger_1 = require("@opentelemetry/exporter-jaeger");
10
10
  const api_1 = require("@opentelemetry/api");
11
11
  const instrumentation_2 = require("./instrumentation");
@@ -24,24 +24,24 @@ const initTraceProvider = (projectName, nodeEnv, config) => {
24
24
  else {
25
25
  api_1.diag.info(`Telemetry enabled (env: ${nodeEnv})`);
26
26
  }
27
- const provider = new node_1.NodeTracerProvider({
27
+ const provider = new sdk_trace_node_1.NodeTracerProvider({
28
28
  resource: new resources_1.Resource({
29
29
  [semantic_conventions_1.SemanticResourceAttributes.SERVICE_NAME]: projectName,
30
30
  }),
31
31
  });
32
32
  if (config.jaegerProcessor === JaegerProcessorType.CONSOLE || config.jaegerProcessor === JaegerProcessorType.BOTH) {
33
- provider.addSpanProcessor(new tracing_1.SimpleSpanProcessor(new tracing_1.ConsoleSpanExporter()));
33
+ provider.addSpanProcessor(new sdk_trace_base_1.SimpleSpanProcessor(new sdk_trace_base_1.ConsoleSpanExporter()));
34
34
  }
35
35
  if (config.jaegerProcessor === JaegerProcessorType.EXPORTER || config.jaegerProcessor === JaegerProcessorType.BOTH) {
36
36
  const options = config.jaegerEndpoint
37
37
  ? { endpoint: config.jaegerEndpoint }
38
38
  : Object.assign(Object.assign({}, (config.jaegerHost && { host: config.jaegerHost })), (config.jaegerPort && { port: config.jaegerPort }));
39
- provider.addSpanProcessor(new tracing_1.BatchSpanProcessor(new exporter_jaeger_1.JaegerExporter(options)));
39
+ provider.addSpanProcessor(new sdk_trace_base_1.BatchSpanProcessor(new exporter_jaeger_1.JaegerExporter(options)));
40
40
  }
41
41
  provider.register();
42
42
  (0, instrumentation_1.registerInstrumentations)({
43
43
  tracerProvider: provider,
44
- instrumentations: [(0, instrumentation_2.getInstrumentation)()],
44
+ instrumentations: (0, instrumentation_2.getInstrumentation)(),
45
45
  });
46
46
  };
47
47
  exports.initTraceProvider = initTraceProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"trace-provider.js","sourceRoot":"","sources":["../../../src/monitoring/opentelemetry/trace-provider.ts"],"names":[],"mappings":";;;AAAA,oEAA0E;AAC1E,8CAAyD;AACzD,wDAAoD;AACpD,8EAAiF;AACjF,oDAAsG;AACtG,oEAAgF;AAChF,4CAAwF;AACxF,uDAA+E;AAE/E,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC3B,0CAAmB,CAAA;IACnB,4CAAqB,CAAA;IACrB,oCAAa,CAAA;AACjB,CAAC,EAJW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAI9B;AAWM,MAAM,iBAAiB,GAAG,CAAC,WAAmB,EAAE,OAAe,EAAE,MAAqB,EAAE,EAAE;IAC7F,UAAI,CAAC,SAAS,CAAC,IAAI,uBAAiB,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IAE7D,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACvB,UAAI,CAAC,IAAI,CAAC,4BAA4B,OAAO,GAAG,CAAC,CAAC;QAClD,OAAO;KACV;SAAM;QACH,UAAI,CAAC,IAAI,CAAC,2BAA2B,OAAO,GAAG,CAAC,CAAC;KACpD;IAED,MAAM,QAAQ,GAAuB,IAAI,yBAAkB,CAAC;QACxD,QAAQ,EAAE,IAAI,oBAAQ,CAAC;YACnB,CAAC,iDAA0B,CAAC,YAAY,CAAC,EAAE,WAAW;SACzD,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,eAAe,KAAK,mBAAmB,CAAC,OAAO,IAAI,MAAM,CAAC,eAAe,KAAK,mBAAmB,CAAC,IAAI,EAAE;QAC/G,QAAQ,CAAC,gBAAgB,CAAC,IAAI,6BAAmB,CAAC,IAAI,6BAAmB,EAAE,CAAC,CAAC,CAAC;KACjF;IAED,IAAI,MAAM,CAAC,eAAe,KAAK,mBAAmB,CAAC,QAAQ,IAAI,MAAM,CAAC,eAAe,KAAK,mBAAmB,CAAC,IAAI,EAAE;QAChH,MAAM,OAAO,GAAmB,MAAM,CAAC,cAAc;YACjD,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,cAAc,EAAE;YACrC,CAAC,iCACQ,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,GAClD,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CACxD,CAAC;QACR,QAAQ,CAAC,gBAAgB,CAAC,IAAI,4BAAkB,CAAC,IAAI,gCAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KAClF;IAED,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAEpB,IAAA,0CAAwB,EAAC;QACrB,cAAc,EAAE,QAAQ;QACxB,gBAAgB,EAAE,CAAC,IAAA,oCAAkB,GAAE,CAAC;KAC3C,CAAC,CAAC;AACP,CAAC,CAAC;AApCW,QAAA,iBAAiB,qBAoC5B;AAEK,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,MAAqB,EAAoB,EAAE;IACzF,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACvB,OAAO;KACV;IACD,MAAM,MAAM,GAAG,WAAK,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7D,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AACtC,CAAC,CAAC;AANW,QAAA,eAAe,mBAM1B"}
1
+ {"version":3,"file":"trace-provider.js","sourceRoot":"","sources":["../../../src/monitoring/opentelemetry/trace-provider.ts"],"names":[],"mappings":";;;AAAA,oEAA0E;AAC1E,kEAAmE;AACnE,wDAAoD;AACpD,8EAAiF;AACjF,kEAA6G;AAC7G,oEAAgF;AAChF,4CAAwF;AACxF,uDAA+E;AAE/E,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC3B,0CAAmB,CAAA;IACnB,4CAAqB,CAAA;IACrB,oCAAa,CAAA;AACjB,CAAC,EAJW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAI9B;AAWM,MAAM,iBAAiB,GAAG,CAAC,WAAmB,EAAE,OAAe,EAAE,MAAqB,EAAE,EAAE;IAC7F,UAAI,CAAC,SAAS,CAAC,IAAI,uBAAiB,EAAE,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IAE7D,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACvB,UAAI,CAAC,IAAI,CAAC,4BAA4B,OAAO,GAAG,CAAC,CAAC;QAClD,OAAO;KACV;SAAM;QACH,UAAI,CAAC,IAAI,CAAC,2BAA2B,OAAO,GAAG,CAAC,CAAC;KACpD;IAED,MAAM,QAAQ,GAAuB,IAAI,mCAAkB,CAAC;QACxD,QAAQ,EAAE,IAAI,oBAAQ,CAAC;YACnB,CAAC,iDAA0B,CAAC,YAAY,CAAC,EAAE,WAAW;SACzD,CAAC;KACL,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,eAAe,KAAK,mBAAmB,CAAC,OAAO,IAAI,MAAM,CAAC,eAAe,KAAK,mBAAmB,CAAC,IAAI,EAAE;QAC/G,QAAQ,CAAC,gBAAgB,CAAC,IAAI,oCAAmB,CAAC,IAAI,oCAAmB,EAAE,CAAC,CAAC,CAAC;KACjF;IAED,IAAI,MAAM,CAAC,eAAe,KAAK,mBAAmB,CAAC,QAAQ,IAAI,MAAM,CAAC,eAAe,KAAK,mBAAmB,CAAC,IAAI,EAAE;QAChH,MAAM,OAAO,GAAmB,MAAM,CAAC,cAAc;YACjD,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,cAAc,EAAE;YACrC,CAAC,iCACQ,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,GAClD,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CACxD,CAAC;QACR,QAAQ,CAAC,gBAAgB,CAAC,IAAI,mCAAkB,CAAC,IAAI,gCAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;KAClF;IAED,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAEpB,IAAA,0CAAwB,EAAC;QACrB,cAAc,EAAE,QAAQ;QACxB,gBAAgB,EAAE,IAAA,oCAAkB,GAAE;KACzC,CAAC,CAAC;AACP,CAAC,CAAC;AApCW,QAAA,iBAAiB,qBAoC5B;AAEK,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,MAAqB,EAAoB,EAAE;IACzF,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;QACvB,OAAO;KACV;IACD,MAAM,MAAM,GAAG,WAAK,CAAC,iBAAiB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7D,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;AACtC,CAAC,CAAC;AANW,QAAA,eAAe,mBAM1B"}
@@ -8,7 +8,7 @@ const GetSubProperty = (path, obj) => {
8
8
  else {
9
9
  return path.split(".").reduce((prev, curr) => {
10
10
  return prev ? prev[curr] : undefined;
11
- }, obj || self);
11
+ }, obj);
12
12
  }
13
13
  };
14
14
  exports.GetSubProperty = GetSubProperty;
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../src/output-gateway/Utils.ts"],"names":[],"mappings":";;;AAAO,MAAM,cAAc,GAAG,CAAI,IAAY,EAAE,GAAW,EAAK,EAAE;IAC9D,IAAI,IAAI,KAAK,EAAE,EAAE;QACb,OAAO,GAAmB,CAAC;KAC9B;SAAM;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,IAAS,EAAE,EAAE;YACnD,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzC,CAAC,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;KACnB;AACL,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEF;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAAC,KAAyB,EAAW,EAAE;IACzE,IAAI,KAAK,KAAK,SAAS,EAAE;QACrB,OAAO,KAAK,CAAC;KAChB;SAAM;QACH,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;KAC/D;AACL,CAAC,CAAC;AANW,QAAA,sBAAsB,0BAMjC"}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../src/output-gateway/Utils.ts"],"names":[],"mappings":";;;AAAO,MAAM,cAAc,GAAG,CAAI,IAAY,EAAE,GAAW,EAAK,EAAE;IAC9D,IAAI,IAAI,KAAK,EAAE,EAAE;QACb,OAAO,GAAmB,CAAC;KAC9B;SAAM;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,IAAS,EAAE,EAAE;YACnD,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzC,CAAC,EAAE,GAAG,CAAC,CAAC;KACX;AACL,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEF;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAAC,KAAyB,EAAW,EAAE;IACzE,IAAI,KAAK,KAAK,SAAS,EAAE;QACrB,OAAO,KAAK,CAAC;KAChB;SAAM;QACH,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;KAC/D;AACL,CAAC,CAAC;AANW,QAAA,sBAAsB,0BAMjC"}
package/package.json CHANGED
@@ -1,135 +1,136 @@
1
1
  {
2
- "name": "@golemio/core",
3
- "version": "1.2.8",
4
- "description": "Golemio Core Module",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "bin": {
8
- "golemio-import-test-data": "bin/import-test-data.js"
9
- },
10
- "scripts": {
11
- "build": "rimraf ./dist && ttsc -p ./tsconfig.build.json",
12
- "build-minimal": "run-s 'build --sourceMap false --declaration false'",
13
- "build-watch": "run-s 'build --watch --preserveWatchOutput'",
14
- "test": "cross-env NODE_ENV=test TS_NODE_COMPILER='ttypescript' mocha --exit --check-leaks --timeout 120000 -r ts-node/register -r dotenv/config 'test/**/*.test.ts'",
15
- "test-debug": "run-s 'test --inspect-brk=9230'",
16
- "code-coverage": "nyc run-s 'test -r source-map-support/register'",
17
- "generate-docs": "typedoc --out docs/typedoc src",
18
- "lint": "eslint \"{src,test}/**/*.ts\""
19
- },
20
- "keywords": [
21
- "golemio"
22
- ],
23
- "author": "Operator ICT, a.s.",
24
- "license": "MIT",
25
- "repository": {
26
- "type": "git",
27
- "url": "https://gitlab.com/operator-ict/golemio/code/modules/core"
28
- },
29
- "devDependencies": {
30
- "@commitlint/cli": "^16.2.1",
31
- "@commitlint/config-conventional": "^16.2.1",
32
- "@golemio/eslint-config": "^1.1.0",
33
- "@types/amqplib": "^0.5.17",
34
- "@types/apicache": "^1.2.3",
35
- "@types/chai": "4.2.3",
36
- "@types/chai-as-promised": "7.1.2",
37
- "@types/content-type": "^1.1.3",
38
- "@types/debug": "0.0.31",
39
- "@types/decompress": "^4.2.3",
40
- "@types/ioredis": "^4.17.10",
41
- "@types/lodash": "^4.14.165",
42
- "@types/mocha": "^8.2.0",
43
- "@types/morgan": "^1.9.2",
44
- "@types/node": "^14.14.20",
45
- "@types/redis": "^2.8.28",
46
- "@types/sinon": "7.0.13",
47
- "@types/ssh2-sftp-client": "^5.3.1",
48
- "@types/supertest": "^2.0.11",
49
- "@zerollup/ts-transform-paths": "^1.7.18",
50
- "chai": "4.2.0",
51
- "chai-as-promised": "7.1.1",
52
- "cross-env": "^7.0.3",
53
- "eslint": "^8.1.1",
54
- "husky": "^4.3.7",
55
- "mocha": "^9.1.2",
56
- "nock": "^13.0.5",
57
- "npm-run-all": "^4.1.5",
58
- "nyc": "^15.1.0",
59
- "prettier": "^2.5.1",
60
- "pretty-quick": "^3.1.0",
61
- "rimraf": "^3.0.2",
62
- "sinon": "7.1.1",
63
- "source-map-support": "0.5.9",
64
- "supertest": "^6.1.6",
65
- "ts-node": "^9.1.1",
66
- "ttypescript": "^1.5.13",
67
- "typedoc": "^0.21.4",
68
- "typescript": "4.4.4"
69
- },
70
- "dependencies": {
71
- "@golemio/errors": "^1.0.1",
72
- "@golemio/utils": "^1.0.0",
73
- "@golemio/validator": "0.2.2",
74
- "@google-cloud/storage": "^5.18.0",
75
- "@opentelemetry/api": "^1.0.2",
76
- "@opentelemetry/exporter-jaeger": "^0.24.0",
77
- "@opentelemetry/instrumentation-express": "^0.24.0",
78
- "@opentelemetry/instrumentation-http": "^0.24.0",
79
- "@opentelemetry/instrumentation-ioredis": "^0.24.0",
80
- "@opentelemetry/instrumentation-redis": "^0.24.0",
81
- "@opentelemetry/node": "^0.24.0",
82
- "@opentelemetry/resources": "^0.24.0",
83
- "@opentelemetry/tracing": "^0.24.0",
84
- "@sentry/node": "^6.11.0",
85
- "@sentry/tracing": "^6.11.0",
86
- "@types/express": "^4.16.0",
87
- "@types/luxon": "^2.3.1",
88
- "@types/request-promise": "^4.1.45",
89
- "ajv": "^8.10.0",
90
- "amqplib": "^0.7.1",
91
- "apicache": "^1.6.3",
92
- "aws-sdk": "^2.823.0",
93
- "axios": "^0.24.0",
94
- "basic-ftp": "^4.6.6",
95
- "content-type": "^1.0.4",
96
- "debug": "3.1.0",
97
- "decompress": "^4.2.1",
98
- "dotenv": "^8.2.0",
99
- "express": "^4.16.4",
100
- "express-validator": "^5.3.1",
101
- "fast-csv": "^4.3.6",
102
- "fast-glob": "^3.2.5",
103
- "iconv-lite": "^0.6.2",
104
- "ioredis": "^4.19.4",
105
- "lightship": "^6.7.2",
106
- "lodash": "^4.17.21",
107
- "luxon": "^2.3.2",
108
- "moment-timezone": "^0.5.26",
109
- "mongodb-restore-dump": "1.0.1",
110
- "mongoose": "^5.3.6",
111
- "morgan": "^1.10.0",
112
- "opentelemetry-instrumentation-amqplib": "^0.24.0",
113
- "opentelemetry-instrumentation-aws-sdk": "^0.24.1",
114
- "opentelemetry-instrumentation-mongoose": "^0.24.0",
115
- "opentelemetry-instrumentation-sequelize": "^0.24.0",
116
- "path-to-regexp": "^6.2.0",
117
- "pg": "^8.6.0",
118
- "prom-client": "^14.0.0",
119
- "redis": "^3.1.1",
120
- "request": "2.88.0",
121
- "request-promise": "^4.2.5",
122
- "sequelize": "^6.6.5",
123
- "ssh2-sftp-client": "^7.1.0",
124
- "winston": "^3.3.3",
125
- "xml2js-es6-promise": "^1.1.1"
126
- },
127
- "resolutions": {
128
- "mpath": "^0.8.4",
129
- "url-parse": "^1.5.6",
130
- "minimist": "^1.2.6",
131
- "moment": "^2.29.2",
132
- "@google-cloud/storage/**/node-forge": "^1.3.0",
133
- "**/axios/follow-redirects": "^1.14.7"
134
- }
2
+ "name": "@golemio/core",
3
+ "version": "1.2.9-dev.534259948",
4
+ "description": "Golemio Core Module",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "bin": {
8
+ "golemio-import-test-data": "bin/import-test-data.js"
9
+ },
10
+ "scripts": {
11
+ "build": "rimraf ./dist && ttsc -p ./tsconfig.build.json",
12
+ "build-minimal": "run-s 'build --sourceMap false --declaration false'",
13
+ "build-watch": "run-s 'build --watch --preserveWatchOutput'",
14
+ "test": "cross-env NODE_ENV=test TS_NODE_COMPILER='ttypescript' mocha --exit --check-leaks --timeout 120000 -r ts-node/register -r dotenv/config 'test/**/*.test.ts'",
15
+ "test-debug": "run-s 'test --inspect-brk=9230'",
16
+ "code-coverage": "nyc run-s 'test -r source-map-support/register'",
17
+ "generate-docs": "typedoc --out docs/typedoc src",
18
+ "lint": "eslint \"{src,test}/**/*.ts\""
19
+ },
20
+ "keywords": [
21
+ "golemio"
22
+ ],
23
+ "author": "Operator ICT, a.s.",
24
+ "license": "MIT",
25
+ "repository": {
26
+ "type": "git",
27
+ "url": "https://gitlab.com/operator-ict/golemio/code/modules/core"
28
+ },
29
+ "devDependencies": {
30
+ "@commitlint/cli": "^16.2.1",
31
+ "@commitlint/config-conventional": "^16.2.1",
32
+ "@golemio/eslint-config": "^1.1.0",
33
+ "@types/amqplib": "^0.5.17",
34
+ "@types/apicache": "^1.2.3",
35
+ "@types/chai": "4.2.3",
36
+ "@types/chai-as-promised": "7.1.2",
37
+ "@types/content-type": "^1.1.3",
38
+ "@types/debug": "0.0.31",
39
+ "@types/decompress": "^4.2.3",
40
+ "@types/ioredis": "^4.17.10",
41
+ "@types/lodash": "^4.14.165",
42
+ "@types/mocha": "^8.2.0",
43
+ "@types/morgan": "^1.9.2",
44
+ "@types/node": "^14.14.20",
45
+ "@types/redis": "^2.8.28",
46
+ "@types/sinon": "7.0.13",
47
+ "@types/ssh2-sftp-client": "^5.3.1",
48
+ "@types/supertest": "^2.0.11",
49
+ "@zerollup/ts-transform-paths": "^1.7.18",
50
+ "chai": "4.2.0",
51
+ "chai-as-promised": "7.1.1",
52
+ "cross-env": "^7.0.3",
53
+ "eslint": "^8.1.1",
54
+ "husky": "^4.3.7",
55
+ "mocha": "^9.1.2",
56
+ "nock": "^13.0.5",
57
+ "npm-run-all": "^4.1.5",
58
+ "nyc": "^15.1.0",
59
+ "prettier": "^2.5.1",
60
+ "pretty-quick": "^3.1.0",
61
+ "rimraf": "^3.0.2",
62
+ "sinon": "7.1.1",
63
+ "source-map-support": "0.5.9",
64
+ "supertest": "^6.1.6",
65
+ "ts-node": "^9.1.1",
66
+ "ttypescript": "^1.5.13",
67
+ "typedoc": "^0.21.4",
68
+ "typescript": "4.4.4"
69
+ },
70
+ "dependencies": {
71
+ "@golemio/errors": "^1.0.1",
72
+ "@golemio/utils": "^1.0.0",
73
+ "@golemio/validator": "0.2.2",
74
+ "@google-cloud/storage": "^5.18.0",
75
+ "@opentelemetry/api": "^1.1.0",
76
+ "@opentelemetry/exporter-jaeger": "^1.2.0",
77
+ "@opentelemetry/instrumentation-amqplib": "^0.28.0",
78
+ "@opentelemetry/instrumentation-aws-sdk": "^0.6.0",
79
+ "@opentelemetry/instrumentation-express": "^0.28.0",
80
+ "@opentelemetry/instrumentation-http": "^0.28.0",
81
+ "@opentelemetry/instrumentation-ioredis": "^0.28.0",
82
+ "@opentelemetry/instrumentation-pg": "^0.28.0",
83
+ "@opentelemetry/instrumentation-redis": "^0.29.0",
84
+ "@opentelemetry/resources": "^1.2.0",
85
+ "@opentelemetry/sdk-trace-base": "^1.2.0",
86
+ "@opentelemetry/sdk-trace-node": "^1.2.0",
87
+ "@sentry/node": "^6.11.0",
88
+ "@sentry/tracing": "^6.11.0",
89
+ "@types/express": "^4.16.0",
90
+ "@types/luxon": "^2.3.1",
91
+ "@types/request-promise": "^4.1.45",
92
+ "ajv": "^8.10.0",
93
+ "amqplib": "^0.7.1",
94
+ "apicache": "^1.6.3",
95
+ "aws-sdk": "^2.823.0",
96
+ "axios": "^0.24.0",
97
+ "basic-ftp": "^4.6.6",
98
+ "content-type": "^1.0.4",
99
+ "debug": "3.1.0",
100
+ "decompress": "^4.2.1",
101
+ "dotenv": "^8.2.0",
102
+ "express": "^4.16.4",
103
+ "express-validator": "^5.3.1",
104
+ "fast-csv": "^4.3.6",
105
+ "fast-glob": "^3.2.5",
106
+ "iconv-lite": "^0.6.2",
107
+ "ioredis": "^4.19.4",
108
+ "lightship": "^6.7.2",
109
+ "lodash": "^4.17.21",
110
+ "luxon": "^2.3.2",
111
+ "moment-timezone": "^0.5.26",
112
+ "mongodb-restore-dump": "1.0.1",
113
+ "mongoose": "^5.3.6",
114
+ "morgan": "^1.10.0",
115
+ "opentelemetry-instrumentation-mongoose": "^0.27.1",
116
+ "opentelemetry-instrumentation-sequelize": "^0.27.1",
117
+ "path-to-regexp": "^6.2.0",
118
+ "pg": "^8.6.0",
119
+ "prom-client": "^14.0.0",
120
+ "redis": "^3.1.1",
121
+ "request": "2.88.0",
122
+ "request-promise": "^4.2.5",
123
+ "sequelize": "^6.6.5",
124
+ "ssh2-sftp-client": "^7.1.0",
125
+ "winston": "^3.3.3",
126
+ "xml2js-es6-promise": "^1.1.1"
127
+ },
128
+ "resolutions": {
129
+ "mpath": "^0.8.4",
130
+ "url-parse": "^1.5.6",
131
+ "minimist": "^1.2.6",
132
+ "moment": "^2.29.2",
133
+ "@google-cloud/storage/**/node-forge": "^1.3.0",
134
+ "**/axios/follow-redirects": "^1.14.7"
135
+ }
135
136
  }