@eqxjs/nest-opentelemetry 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/dist/{tracer/modules → extend}/common/generic.common.d.ts +1 -1
  2. package/dist/{tracer/modules → extend}/common/generic.common.js +2 -2
  3. package/dist/extend/common/generic.common.js.map +1 -0
  4. package/dist/extend/common/m1.common.d.ts +3 -0
  5. package/dist/extend/common/m1.common.js.map +1 -0
  6. package/dist/extend/common/m2.common.d.ts +3 -0
  7. package/dist/extend/common/m2.common.js.map +1 -0
  8. package/dist/extend/common/m3.common.d.ts +3 -0
  9. package/dist/extend/common/m3.common.js.map +1 -0
  10. package/dist/extend/dto/header.dto.js.map +1 -0
  11. package/dist/{dto → extend/dto}/m1.dto.js.map +1 -1
  12. package/dist/{dto → extend/dto}/m2.dto.js.map +1 -1
  13. package/dist/{dto → extend/dto}/m3.dto.js.map +1 -1
  14. package/dist/extend/dto/protocol.dto.js.map +1 -0
  15. package/dist/extend/dto/service.dto.js.map +1 -0
  16. package/dist/extend/kafka.span.d.ts +3 -0
  17. package/dist/{tracer/modules/otlp.kafka.js → extend/kafka.span.js} +4 -12
  18. package/dist/extend/kafka.span.js.map +1 -0
  19. package/dist/extend/socket-io.span.d.ts +3 -0
  20. package/dist/extend/socket-io.span.js +26 -0
  21. package/dist/extend/socket-io.span.js.map +1 -0
  22. package/dist/index.d.ts +1 -3
  23. package/dist/index.js +19 -7
  24. package/dist/index.js.map +1 -1
  25. package/dist/register.d.ts +1 -0
  26. package/dist/register.js +103 -0
  27. package/dist/register.js.map +1 -0
  28. package/dist/tsconfig.tsbuildinfo +1 -1
  29. package/dist/utils.d.ts +87 -0
  30. package/dist/utils.js +191 -0
  31. package/dist/utils.js.map +1 -0
  32. package/package.json +44 -15
  33. package/dist/dto/header.dto.js.map +0 -1
  34. package/dist/dto/protocol.dto.js.map +0 -1
  35. package/dist/dto/service.dto.js.map +0 -1
  36. package/dist/logger/otlp.logger.module.d.ts +0 -3
  37. package/dist/logger/otlp.logger.module.js +0 -26
  38. package/dist/logger/otlp.logger.module.js.map +0 -1
  39. package/dist/logger/otlp.logger.service.d.ts +0 -15
  40. package/dist/logger/otlp.logger.service.js +0 -43
  41. package/dist/logger/otlp.logger.service.js.map +0 -1
  42. package/dist/modules/index.d.ts +0 -5
  43. package/dist/modules/index.js +0 -14
  44. package/dist/modules/index.js.map +0 -1
  45. package/dist/modules/otlp.auto.d.ts +0 -3
  46. package/dist/modules/otlp.auto.js +0 -11
  47. package/dist/modules/otlp.auto.js.map +0 -1
  48. package/dist/modules/otlp.express.d.ts +0 -4
  49. package/dist/modules/otlp.express.js +0 -11
  50. package/dist/modules/otlp.express.js.map +0 -1
  51. package/dist/modules/otlp.http.d.ts +0 -4
  52. package/dist/modules/otlp.http.js +0 -11
  53. package/dist/modules/otlp.http.js.map +0 -1
  54. package/dist/modules/otlp.kafka.d.ts +0 -4
  55. package/dist/modules/otlp.kafka.js +0 -68
  56. package/dist/modules/otlp.kafka.js.map +0 -1
  57. package/dist/modules/otlp.nestjs.d.ts +0 -4
  58. package/dist/modules/otlp.nestjs.js +0 -11
  59. package/dist/modules/otlp.nestjs.js.map +0 -1
  60. package/dist/otlp.app.d.ts +0 -2
  61. package/dist/otlp.app.js +0 -63
  62. package/dist/otlp.app.js.map +0 -1
  63. package/dist/tracer/modules/common/generic.common.js.map +0 -1
  64. package/dist/tracer/modules/common/m1.common.d.ts +0 -3
  65. package/dist/tracer/modules/common/m1.common.js.map +0 -1
  66. package/dist/tracer/modules/common/m2.common.d.ts +0 -3
  67. package/dist/tracer/modules/common/m2.common.js.map +0 -1
  68. package/dist/tracer/modules/common/m3.common.d.ts +0 -3
  69. package/dist/tracer/modules/common/m3.common.js.map +0 -1
  70. package/dist/tracer/modules/index.d.ts +0 -11
  71. package/dist/tracer/modules/index.js +0 -26
  72. package/dist/tracer/modules/index.js.map +0 -1
  73. package/dist/tracer/modules/otlp.auto.d.ts +0 -3
  74. package/dist/tracer/modules/otlp.auto.js +0 -11
  75. package/dist/tracer/modules/otlp.auto.js.map +0 -1
  76. package/dist/tracer/modules/otlp.azure.d.ts +0 -4
  77. package/dist/tracer/modules/otlp.azure.js +0 -11
  78. package/dist/tracer/modules/otlp.azure.js.map +0 -1
  79. package/dist/tracer/modules/otlp.express.d.ts +0 -4
  80. package/dist/tracer/modules/otlp.express.js +0 -34
  81. package/dist/tracer/modules/otlp.express.js.map +0 -1
  82. package/dist/tracer/modules/otlp.http.d.ts +0 -4
  83. package/dist/tracer/modules/otlp.http.js +0 -30
  84. package/dist/tracer/modules/otlp.http.js.map +0 -1
  85. package/dist/tracer/modules/otlp.ioredis.d.ts +0 -4
  86. package/dist/tracer/modules/otlp.ioredis.js +0 -11
  87. package/dist/tracer/modules/otlp.ioredis.js.map +0 -1
  88. package/dist/tracer/modules/otlp.kafka.d.ts +0 -4
  89. package/dist/tracer/modules/otlp.kafka.js.map +0 -1
  90. package/dist/tracer/modules/otlp.mongodb.d.ts +0 -4
  91. package/dist/tracer/modules/otlp.mongodb.js +0 -11
  92. package/dist/tracer/modules/otlp.mongodb.js.map +0 -1
  93. package/dist/tracer/modules/otlp.mongoose.d.ts +0 -4
  94. package/dist/tracer/modules/otlp.mongoose.js +0 -11
  95. package/dist/tracer/modules/otlp.mongoose.js.map +0 -1
  96. package/dist/tracer/modules/otlp.nestjs.d.ts +0 -4
  97. package/dist/tracer/modules/otlp.nestjs.js +0 -11
  98. package/dist/tracer/modules/otlp.nestjs.js.map +0 -1
  99. package/dist/tracer/modules/otlp.redis.d.ts +0 -4
  100. package/dist/tracer/modules/otlp.redis.js +0 -11
  101. package/dist/tracer/modules/otlp.redis.js.map +0 -1
  102. package/dist/tracer/modules/otlp.socket-io.d.ts +0 -4
  103. package/dist/tracer/modules/otlp.socket-io.js +0 -18
  104. package/dist/tracer/modules/otlp.socket-io.js.map +0 -1
  105. package/dist/tracer/otlp.app.d.ts +0 -15
  106. package/dist/tracer/otlp.app.js +0 -122
  107. package/dist/tracer/otlp.app.js.map +0 -1
  108. /package/dist/{tracer/modules → extend}/common/m1.common.js +0 -0
  109. /package/dist/{tracer/modules → extend}/common/m2.common.js +0 -0
  110. /package/dist/{tracer/modules → extend}/common/m3.common.js +0 -0
  111. /package/dist/{dto → extend/dto}/header.dto.d.ts +0 -0
  112. /package/dist/{dto → extend/dto}/header.dto.js +0 -0
  113. /package/dist/{dto → extend/dto}/m1.dto.d.ts +0 -0
  114. /package/dist/{dto → extend/dto}/m1.dto.js +0 -0
  115. /package/dist/{dto → extend/dto}/m2.dto.d.ts +0 -0
  116. /package/dist/{dto → extend/dto}/m2.dto.js +0 -0
  117. /package/dist/{dto → extend/dto}/m3.dto.d.ts +0 -0
  118. /package/dist/{dto → extend/dto}/m3.dto.js +0 -0
  119. /package/dist/{dto → extend/dto}/protocol.dto.d.ts +0 -0
  120. /package/dist/{dto → extend/dto}/protocol.dto.js +0 -0
  121. /package/dist/{dto → extend/dto}/service.dto.d.ts +0 -0
  122. /package/dist/{dto → extend/dto}/service.dto.js +0 -0
@@ -1,2 +1,2 @@
1
- import { Span } from "@opentelemetry/sdk-trace-base";
1
+ import { Span } from '@opentelemetry/api';
2
2
  export declare function setSpanHookGeneric(span: Span): void;
@@ -9,8 +9,8 @@ function setSpanHookGeneric(span) {
9
9
  if (process.env.DEPLOYMENT_ENV) {
10
10
  span.setAttribute("deployment.environment", process.env.DEPLOYMENT_ENV);
11
11
  }
12
- if (process.env.DEPLOY_NAMESPACE) {
13
- span.setAttribute("k8s.namespace.name", process.env.DEPLOY_NAMESPACE);
12
+ if (process.env.DEPLOYMENT_NAMESPACE) {
13
+ span.setAttribute("k8s.namespace.name", process.env.DEPLOYMENT_NAMESPACE);
14
14
  }
15
15
  span.setAttribute("net.host.name", (0, os_1.hostname)());
16
16
  span.setAttribute("container.name", (0, os_1.hostname)());
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generic.common.js","sourceRoot":"","sources":["../../../src/extend/common/generic.common.ts"],"names":[],"mappings":";;;AACA,2BAA8B;AAE9B,SAAgB,kBAAkB,CAAC,IAAU;IAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAC/B,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,eAAe,EAAE,IAAA,aAAQ,GAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,IAAA,aAAQ,GAAE,CAAC,CAAC;IAChD,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,IAAA,aAAQ,GAAE,CAAC,CAAC;AAChD,CAAC;AAbD,gDAaC"}
@@ -0,0 +1,3 @@
1
+ import { Span } from '@opentelemetry/api';
2
+ import { DataM1I } from "../dto/m1.dto";
3
+ export declare function setSpanToM1(span: Span, m1Message: DataM1I): void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"m1.common.js","sourceRoot":"","sources":["../../../src/extend/common/m1.common.ts"],"names":[],"mappings":";;;AAEA,2CAA0C;AAE1C,SAAgB,WAAW,CAAC,IAAU,EAAE,SAAkB;;IACxD,IAAI,MAAA,SAAS,CAAC,QAAQ,0CAAE,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAA,SAAS,CAAC,QAAQ,0CAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,QAAQ,0CAAE,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,MAAA,SAAS,CAAC,QAAQ,0CAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,QAAQ,0CAAE,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,YAAY,CACf,yBAAyB,EACzB,MAAA,SAAS,CAAC,QAAQ,0CAAE,UAAU,CAC/B,CAAC;IACJ,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,QAAQ,0CAAE,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC,YAAY,CAAC,oBAAoB,EAAE,MAAA,SAAS,CAAC,QAAQ,0CAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,QAAQ,0CAAE,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAA,SAAS,CAAC,QAAQ,0CAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IACD,IAAA,uBAAW,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC/B,CAAC;AApBD,kCAoBC"}
@@ -0,0 +1,3 @@
1
+ import { Span } from '@opentelemetry/api';
2
+ import { DataM2I } from "../dto/m2.dto";
3
+ export declare function setSpanToM2(span: Span, m2Message: DataM2I): void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"m2.common.js","sourceRoot":"","sources":["../../../src/extend/common/m2.common.ts"],"names":[],"mappings":";;;AAEA,qDAAsD;AAEtD,SAAgB,WAAW,CAAC,IAAU,EAAE,SAAkB;;IACxD,IAAA,mCAAkB,EAAC,IAAI,CAAC,CAAC;IACzB,IAAI,MAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,QAAQ,0CAAE,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,MAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,QAAQ,0CAAE,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC,YAAY,CAAC,uBAAuB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,UAAU,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,MAAM,EAAE,CAAC;QAC7B,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,KAAK,EAAE,CAAC;QAC5B,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,yBAAyB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,WAAW,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,UAAU,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,YAAY,EAAE,CAAC;QACnC,IAAI,CAAC,YAAY,CACf,yBAAyB,EACzB,MAAA,SAAS,CAAC,MAAM,0CAAE,YAAY,CAC/B,CAAC;IACJ,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,uBAAuB,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,WAAW,CAAC,CAAC;IAC5E,CAAC;AACH,CAAC;AA5CD,kCA4CC"}
@@ -0,0 +1,3 @@
1
+ import { Span } from '@opentelemetry/api';
2
+ import { DataM3I } from "../dto/m3.dto";
3
+ export declare function setSpanToM3(span: Span, m3Message: DataM3I): void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"m3.common.js","sourceRoot":"","sources":["../../../src/extend/common/m3.common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header.dto.js","sourceRoot":"","sources":["../../../src/extend/dto/header.dto.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"m1.dto.js","sourceRoot":"","sources":["../../src/dto/m1.dto.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"m1.dto.js","sourceRoot":"","sources":["../../../src/extend/dto/m1.dto.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"m2.dto.js","sourceRoot":"","sources":["../../src/dto/m2.dto.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"m2.dto.js","sourceRoot":"","sources":["../../../src/extend/dto/m2.dto.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"m3.dto.js","sourceRoot":"","sources":["../../src/dto/m3.dto.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"m3.dto.js","sourceRoot":"","sources":["../../../src/extend/dto/m3.dto.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.dto.js","sourceRoot":"","sources":["../../../src/extend/dto/protocol.dto.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.dto.js","sourceRoot":"","sources":["../../../src/extend/dto/service.dto.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { Span } from '@opentelemetry/api';
2
+ export declare function producerHook(span: Span, topic: string, message: any): void;
3
+ export declare function consumerHook(span: Span, topic: string, message: any): void;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OTLPKafka = void 0;
4
- const opentelemetry_instrumentation_kafkajs_1 = require("opentelemetry-instrumentation-kafkajs");
3
+ exports.consumerHook = exports.producerHook = void 0;
5
4
  const m1_common_1 = require("./common/m1.common");
6
5
  const m2_common_1 = require("./common/m2.common");
7
6
  const m3_common_1 = require("./common/m3.common");
@@ -54,6 +53,7 @@ function producerHook(span, topic, message) {
54
53
  }
55
54
  }
56
55
  }
56
+ exports.producerHook = producerHook;
57
57
  function consumerHook(span, topic, message) {
58
58
  span.setAttribute("kafka.direction", "consume");
59
59
  addGenericTag(span, topic, message);
@@ -83,13 +83,5 @@ function consumerHook(span, topic, message) {
83
83
  }
84
84
  }
85
85
  }
86
- class OTLPKafka {
87
- static getInstrumentations() {
88
- return new opentelemetry_instrumentation_kafkajs_1.KafkaJsInstrumentation({
89
- producerHook: producerHook,
90
- consumerHook: consumerHook,
91
- });
92
- }
93
- }
94
- exports.OTLPKafka = OTLPKafka;
95
- //# sourceMappingURL=otlp.kafka.js.map
86
+ exports.consumerHook = consumerHook;
87
+ //# sourceMappingURL=kafka.span.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kafka.span.js","sourceRoot":"","sources":["../../src/extend/kafka.span.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Span } from '@opentelemetry/api';
2
+ import { SocketIoHookInfo } from "@opentelemetry/instrumentation-socket.io";
3
+ export declare function socketOnHook(span: Span, hookInfo: SocketIoHookInfo): void;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.socketOnHook = void 0;
4
+ const m1_common_1 = require("./common/m1.common");
5
+ function socketOnHook(span, hookInfo) {
6
+ var _a, _b, _c, _d;
7
+ if (!hookInfo && ((_a = hookInfo.payload) === null || _a === void 0 ? void 0 : _a.length) <= 0) {
8
+ return;
9
+ }
10
+ if (typeof hookInfo.payload[0] === 'object') {
11
+ if (hookInfo.payload[0].id && ((_b = hookInfo.payload[0].handshake) === null || _b === void 0 ? void 0 : _b.headers)) {
12
+ const socket = hookInfo === null || hookInfo === void 0 ? void 0 : hookInfo.payload[0];
13
+ if (socket === null || socket === void 0 ? void 0 : socket.id) {
14
+ span.setAttribute('socket.id', socket.id);
15
+ }
16
+ if ((_c = socket === null || socket === void 0 ? void 0 : socket.handshake) === null || _c === void 0 ? void 0 : _c.headers.key) {
17
+ span.setAttribute('socket.key', (_d = socket === null || socket === void 0 ? void 0 : socket.handshake) === null || _d === void 0 ? void 0 : _d.headers.key);
18
+ }
19
+ }
20
+ else if (hookInfo.payload[0].protocol) {
21
+ (0, m1_common_1.setSpanToM1)(span, hookInfo.payload[0]);
22
+ }
23
+ }
24
+ }
25
+ exports.socketOnHook = socketOnHook;
26
+ //# sourceMappingURL=socket-io.span.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socket-io.span.js","sourceRoot":"","sources":["../../src/extend/socket-io.span.ts"],"names":[],"mappings":";;;AAEA,kDAAiD;AAEjD,SAAgB,YAAY,CAAC,IAAU,EAAE,QAA0B;;IAC/D,IAAG,CAAC,QAAQ,IAAI,CAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,MAAM,KAAI,CAAC,EAAE,CAAC;QAC5C,OAAO;IACX,CAAC;IACD,IAAI,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1C,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAI,MAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,0CAAE,OAAO,CAAA,EAAE,CAAC;YACnE,MAAM,MAAM,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,EAAE,EAAE,CAAC;gBACb,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAC9C,CAAC;YACD,IAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,0CAAE,OAAO,CAAC,GAAG,EAAE,CAAC;gBACjC,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,0CAAE,OAAO,CAAC,GAAG,CAAC,CAAC;YACpE,CAAC;QACL,CAAC;aAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAA,uBAAW,EAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;IACL,CAAC;AACL,CAAC;AAjBD,oCAiBC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1 @@
1
- export { eqxOtlp } from "./tracer/otlp.app";
2
- export { EqxOtlpModule } from "./logger/otlp.logger.module";
3
- export { EqxOtlpService } from "./logger/otlp.logger.service";
1
+ export { getNodeAutoInstrumentations, getResourceDetectorsFromEnv as getResourceDetectors, InstrumentationConfigMap, } from './utils';
package/dist/index.js CHANGED
@@ -1,10 +1,22 @@
1
1
  "use strict";
2
+ /*
3
+ * Copyright The OpenTelemetry Authors
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
2
17
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EqxOtlpService = exports.EqxOtlpModule = exports.eqxOtlp = void 0;
4
- var otlp_app_1 = require("./tracer/otlp.app");
5
- Object.defineProperty(exports, "eqxOtlp", { enumerable: true, get: function () { return otlp_app_1.eqxOtlp; } });
6
- var otlp_logger_module_1 = require("./logger/otlp.logger.module");
7
- Object.defineProperty(exports, "EqxOtlpModule", { enumerable: true, get: function () { return otlp_logger_module_1.EqxOtlpModule; } });
8
- var otlp_logger_service_1 = require("./logger/otlp.logger.service");
9
- Object.defineProperty(exports, "EqxOtlpService", { enumerable: true, get: function () { return otlp_logger_service_1.EqxOtlpService; } });
18
+ exports.getResourceDetectors = exports.getNodeAutoInstrumentations = void 0;
19
+ var utils_1 = require("./utils");
20
+ Object.defineProperty(exports, "getNodeAutoInstrumentations", { enumerable: true, get: function () { return utils_1.getNodeAutoInstrumentations; } });
21
+ Object.defineProperty(exports, "getResourceDetectors", { enumerable: true, get: function () { return utils_1.getResourceDetectorsFromEnv; } });
10
22
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,8CAA4C;AAAnC,mGAAA,OAAO,OAAA;AAChB,kEAA4D;AAAnD,mHAAA,aAAa,OAAA;AACtB,oEAA8D;AAArD,qHAAA,cAAc,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,iCAIiB;AAHf,oHAAA,2BAA2B,OAAA;AAC3B,6GAAA,2BAA2B,OAAwB"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /*
4
+ * Copyright The OpenTelemetry Authors
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * https://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+ const opentelemetry = require("@opentelemetry/sdk-node");
19
+ const api_1 = require("@opentelemetry/api");
20
+ const utils_1 = require("./utils");
21
+ const exporter_trace_otlp_proto_1 = require("@opentelemetry/exporter-trace-otlp-proto");
22
+ const socket_io_span_1 = require("./extend/socket-io.span");
23
+ const kafka_span_1 = require("./extend/kafka.span");
24
+ const exporter_metrics_otlp_proto_1 = require("@opentelemetry/exporter-metrics-otlp-proto");
25
+ const sdk_metrics_1 = require("@opentelemetry/sdk-metrics");
26
+ const monitor_opentelemetry_exporter_1 = require("@azure/monitor-opentelemetry-exporter");
27
+ const sdk_logs_1 = require("@opentelemetry/sdk-logs");
28
+ const sdk_trace_base_1 = require("@opentelemetry/sdk-trace-base");
29
+ const exporter_logs_otlp_proto_1 = require("@opentelemetry/exporter-logs-otlp-proto");
30
+ let traceExporter;
31
+ let metricExporter;
32
+ let logExporter;
33
+ if (process.env.APPLICATIONINSIGHTS_CONNECTION_STRING) {
34
+ traceExporter = new monitor_opentelemetry_exporter_1.AzureMonitorTraceExporter({
35
+ connectionString: process.env["APPLICATIONINSIGHTS_CONNECTION_STRING"],
36
+ });
37
+ metricExporter = new sdk_metrics_1.PeriodicExportingMetricReader({
38
+ exporter: new monitor_opentelemetry_exporter_1.AzureMonitorMetricExporter({
39
+ connectionString: process.env["APPLICATIONINSIGHTS_CONNECTION_STRING"],
40
+ }),
41
+ });
42
+ logExporter = new sdk_logs_1.BatchLogRecordProcessor(new monitor_opentelemetry_exporter_1.AzureMonitorLogExporter({
43
+ connectionString: process.env["APPLICATIONINSIGHTS_CONNECTION_STRING"],
44
+ }));
45
+ }
46
+ else {
47
+ if (process.env.TRACES_URL) {
48
+ traceExporter = new exporter_trace_otlp_proto_1.OTLPTraceExporter({
49
+ // optional - default url is http://localhost:4318/v1/traces
50
+ url: process.env.TRACES_URL,
51
+ // optional - collection of custom headers to be sent with each request, empty by default
52
+ headers: {},
53
+ });
54
+ }
55
+ else {
56
+ traceExporter = new sdk_trace_base_1.SimpleSpanProcessor(new sdk_trace_base_1.ConsoleSpanExporter());
57
+ }
58
+ if (process.env.METRICS_URL) {
59
+ metricExporter = new sdk_metrics_1.PeriodicExportingMetricReader({
60
+ exporter: new exporter_metrics_otlp_proto_1.OTLPMetricExporter({
61
+ // url is optional and can be omitted - default is http://localhost:4318/v1/metrics
62
+ url: process.env.METRICS_URL,
63
+ // an optional object containing custom headers to be sent with each request
64
+ headers: {},
65
+ }),
66
+ });
67
+ }
68
+ if (process.env.LOGGER_URL) {
69
+ logExporter = new sdk_logs_1.BatchLogRecordProcessor(new exporter_logs_otlp_proto_1.OTLPLogExporter({
70
+ // url is optional and can be omitted - default is http://localhost:4318/v1/logs
71
+ url: process.env.LOGGER_URL,
72
+ }));
73
+ }
74
+ }
75
+ const sdk = new opentelemetry.NodeSDK({
76
+ traceExporter: traceExporter,
77
+ instrumentations: (0, utils_1.getNodeAutoInstrumentations)({
78
+ '@opentelemetry/instrumentation-socket.io': {
79
+ onHook: socket_io_span_1.socketOnHook,
80
+ emitHook: socket_io_span_1.socketOnHook,
81
+ traceReserved: true
82
+ },
83
+ '@opentelemetry/instrumentation-kafkajs': {
84
+ producerHook: kafka_span_1.producerHook,
85
+ consumerHook: kafka_span_1.consumerHook
86
+ }
87
+ }),
88
+ resourceDetectors: (0, utils_1.getResourceDetectorsFromEnv)(),
89
+ });
90
+ try {
91
+ sdk.start();
92
+ api_1.diag.info('OpenTelemetry automatic instrumentation started successfully');
93
+ }
94
+ catch (error) {
95
+ api_1.diag.error('Error initializing OpenTelemetry SDK. Your application is not instrumented and will not produce telemetry', error);
96
+ }
97
+ process.on('SIGTERM', () => {
98
+ sdk
99
+ .shutdown()
100
+ .then(() => api_1.diag.debug('OpenTelemetry SDK terminated'))
101
+ .catch(error => api_1.diag.error('Error terminating OpenTelemetry SDK', error));
102
+ });
103
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../src/register.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;GAcG;AACH,yDAAyD;AACzD,4CAA0C;AAC1C,mCAGiB;AACjB,wFAA6E;AAC7E,4DAAsD;AACtD,oDAAiE;AACjE,4FAAgF;AAChF,4DAA2E;AAC3E,0FAI+C;AAC/C,sDAAkE;AAClE,kEAAyF;AACzF,sFAA0E;AAE1E,IAAI,aAAkB,CAAC;AACvB,IAAI,cAAmB,CAAC;AACxB,IAAI,WAAgB,CAAC;AAErB,IAAI,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE,CAAC;IACtD,aAAa,GAAG,IAAI,0DAAyB,CAAC;QAC5C,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC;KACvE,CAAC,CAAC;IACH,cAAc,GAAG,IAAI,2CAA6B,CAAC;QACjD,QAAQ,EAAE,IAAI,2DAA0B,CAAC;YACvC,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC;SACvE,CAAC;KACH,CAAC,CAAC;IACH,WAAW,GAAG,IAAI,kCAAuB,CACvC,IAAI,wDAAuB,CAAC;QAC1B,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC;KACvE,CAAC,CACH,CAAC;AACJ,CAAC;KAAM,CAAC;IACN,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QAC3B,aAAa,GAAG,IAAI,6CAAiB,CAAC;YACpC,4DAA4D;YAC5D,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;YAC3B,yFAAyF;YACzF,OAAO,EAAE,EAAE;SACZ,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,aAAa,GAAG,IAAI,oCAAmB,CAAC,IAAI,oCAAmB,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,cAAc,GAAG,IAAI,2CAA6B,CAAC;YACjD,QAAQ,EAAE,IAAI,gDAAkB,CAAC;gBAC/B,mFAAmF;gBACnF,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;gBAC5B,4EAA4E;gBAC5E,OAAO,EAAE,EAAE;aACZ,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QAC3B,WAAW,GAAG,IAAI,kCAAuB,CACvC,IAAI,0CAAe,CAAC;YAClB,gFAAgF;YAChF,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;SAC5B,CAAC,CACH,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,GAAG,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC;IACpC,aAAa,EAAE,aAAa;IAC5B,gBAAgB,EAAE,IAAA,mCAA2B,EAAC;QAC5C,0CAA0C,EAAE;YAC1C,MAAM,EAAE,6BAAY;YACpB,QAAQ,EAAE,6BAAY;YACtB,aAAa,EAAE,IAAI;SACpB;QACD,wCAAwC,EAAE;YACxC,YAAY,EAAE,yBAAY;YAC1B,YAAY,EAAE,yBAAY;SAC3B;KACF,CAAC;IACF,iBAAiB,EAAE,IAAA,mCAA2B,GAAE;CACjD,CAAC,CAAC;AAEH,IAAI,CAAC;IACH,GAAG,CAAC,KAAK,EAAE,CAAC;IACZ,UAAI,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;AAC5E,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,UAAI,CAAC,KAAK,CACR,2GAA2G,EAC3G,KAAK,CACN,CAAC;AACJ,CAAC;AAED,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;IACzB,GAAG;SACA,QAAQ,EAAE;SACV,IAAI,CAAC,GAAG,EAAE,CAAC,UAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;SACtD,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,UAAI,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC,CAAC;AAC9E,CAAC,CAAC,CAAC"}