@tramvai/module-opentelemetry 6.68.4 → 6.77.2

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/lib/browser.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './tokens';
2
+ export declare const extractTraceparentHeader: () => string | undefined;
2
3
  export declare class OpenTelemetryModule {
3
4
  }
4
5
  //# sourceMappingURL=browser.d.ts.map
package/lib/browser.js CHANGED
@@ -1,8 +1,6 @@
1
1
  import { __decorate } from 'tslib';
2
- import { Module, provide } from '@tramvai/core';
2
+ import { Module } from '@tramvai/core';
3
3
  import once from '@tinkoff/utils/function/once';
4
- import { DEFAULT_HTTP_CLIENT_INTERCEPTORS } from '@tramvai/tokens-http-client';
5
- import { OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN } from './tokens.browser.js';
6
4
  export { OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN, OPENTELEMETRY_PROVIDER_CONFIG_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_ATTRIBUTES_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_TOKEN, OPENTELEMETRY_PROVIDER_SPAN_PROCESSOR_TOKEN, OPENTELEMETRY_PROVIDER_TOKEN, OPENTELEMETRY_TRACER_TOKEN } from './tokens.browser.js';
7
5
 
8
6
  const extractTraceparentHeader = once(() => {
@@ -20,33 +18,9 @@ let OpenTelemetryModule = class OpenTelemetryModule {
20
18
  OpenTelemetryModule = __decorate([
21
19
  Module({
22
20
  imports: [],
23
- providers: [
24
- provide({
25
- provide: DEFAULT_HTTP_CLIENT_INTERCEPTORS,
26
- useFactory: ({ headerInclude }) => (req, next) => {
27
- const url = req.url ?? (req.baseUrl ? `${req.baseUrl}${req.path}` : (req.path ?? ''));
28
- if (!headerInclude(url)) {
29
- return next(req);
30
- }
31
- return next({
32
- ...req,
33
- headers: {
34
- traceparent: extractTraceparentHeader(),
35
- ...req.headers,
36
- },
37
- });
38
- },
39
- deps: {
40
- headerInclude: OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN,
41
- },
42
- }),
43
- provide({
44
- provide: OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN,
45
- useValue: () => true,
46
- }),
47
- ],
21
+ providers: [],
48
22
  })
49
23
  ], OpenTelemetryModule);
50
24
  // todo declareModule!
51
25
 
52
- export { OpenTelemetryModule };
26
+ export { OpenTelemetryModule, extractTraceparentHeader };
package/lib/server.es.js CHANGED
@@ -5,6 +5,7 @@ import { Resource } from '@opentelemetry/resources';
5
5
  import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';
6
6
  import { LOGGER_TOKEN, ENV_MANAGER_TOKEN } from '@tramvai/tokens-common';
7
7
  import { ResourceSlot, ResourceType, RESOURCES_REGISTRY } from '@tramvai/tokens-render';
8
+ import { SpanKind } from '@opentelemetry/api';
8
9
  import { OPENTELEMETRY_PROVIDER_TOKEN, OPENTELEMETRY_TRACER_TOKEN, OPENTELEMETRY_PROVIDER_CONFIG_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_TOKEN, OPENTELEMETRY_PROVIDER_SPAN_PROCESSOR_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_ATTRIBUTES_TOKEN } from './tokens.es.js';
9
10
  export { OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN, OPENTELEMETRY_PROVIDER_CONFIG_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_ATTRIBUTES_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_TOKEN, OPENTELEMETRY_PROVIDER_SPAN_PROCESSOR_TOKEN, OPENTELEMETRY_PROVIDER_TOKEN, OPENTELEMETRY_TRACER_TOKEN } from './tokens.es.js';
10
11
  import { TramvaiTracerImpl } from './tracer/tracer.es.js';
@@ -62,17 +63,19 @@ OpenTelemetryModule = __decorate([
62
63
  },
63
64
  }),
64
65
  provide({
65
- provide: commandLineListTokens.customerStart,
66
+ provide: commandLineListTokens.generatePage,
66
67
  useFactory: ({ tracer, resourcesRegistry }) => {
67
68
  return function insertTraceIdToResourcesRegistry() {
68
- const traceparent = getTraceparentHeader(tracer);
69
- if (traceparent !== undefined) {
70
- resourcesRegistry.register({
71
- slot: ResourceSlot.HEAD_META,
72
- type: ResourceType.meta,
73
- payload: `<meta name="traceparent" content="${traceparent}">`,
74
- });
75
- }
69
+ tracer.startActiveSpan('BROWSER', { kind: SpanKind.CLIENT }, () => {
70
+ const traceparent = getTraceparentHeader(tracer);
71
+ if (traceparent !== undefined) {
72
+ resourcesRegistry.register({
73
+ slot: ResourceSlot.HEAD_META,
74
+ type: ResourceType.meta,
75
+ payload: `<meta name="traceparent" content="${traceparent}">`,
76
+ });
77
+ }
78
+ });
76
79
  };
77
80
  },
78
81
  deps: {
package/lib/server.js CHANGED
@@ -9,6 +9,7 @@ var resources = require('@opentelemetry/resources');
9
9
  var semanticConventions = require('@opentelemetry/semantic-conventions');
10
10
  var tokensCommon = require('@tramvai/tokens-common');
11
11
  var tokensRender = require('@tramvai/tokens-render');
12
+ var api = require('@opentelemetry/api');
12
13
  var tokens = require('./tokens.js');
13
14
  var tracer = require('./tracer/tracer.js');
14
15
  var server = require('./instrumentation/server.js');
@@ -65,17 +66,19 @@ exports.OpenTelemetryModule = tslib.__decorate([
65
66
  },
66
67
  }),
67
68
  core.provide({
68
- provide: core.commandLineListTokens.customerStart,
69
+ provide: core.commandLineListTokens.generatePage,
69
70
  useFactory: ({ tracer, resourcesRegistry }) => {
70
71
  return function insertTraceIdToResourcesRegistry() {
71
- const traceparent = getTraceparentHeader.getTraceparentHeader(tracer);
72
- if (traceparent !== undefined) {
73
- resourcesRegistry.register({
74
- slot: tokensRender.ResourceSlot.HEAD_META,
75
- type: tokensRender.ResourceType.meta,
76
- payload: `<meta name="traceparent" content="${traceparent}">`,
77
- });
78
- }
72
+ tracer.startActiveSpan('BROWSER', { kind: api.SpanKind.CLIENT }, () => {
73
+ const traceparent = getTraceparentHeader.getTraceparentHeader(tracer);
74
+ if (traceparent !== undefined) {
75
+ resourcesRegistry.register({
76
+ slot: tokensRender.ResourceSlot.HEAD_META,
77
+ type: tokensRender.ResourceType.meta,
78
+ payload: `<meta name="traceparent" content="${traceparent}">`,
79
+ });
80
+ }
81
+ });
79
82
  };
80
83
  },
81
84
  deps: {
@@ -6,6 +6,7 @@ const OPENTELEMETRY_PROVIDER_SPAN_PROCESSOR_TOKEN = createToken('tramvai opentel
6
6
  const OPENTELEMETRY_PROVIDER_RESOURCE_TOKEN = createToken('tramvai opentelemetry provider resource', { scope: Scope.SINGLETON });
7
7
  const OPENTELEMETRY_PROVIDER_RESOURCE_ATTRIBUTES_TOKEN = createToken('tramvai opentelemetry provider resource attributes', { multi: true, scope: Scope.SINGLETON });
8
8
  const OPENTELEMETRY_TRACER_TOKEN = createToken('tramvai opentelemetry tracer', { scope: Scope.SINGLETON });
9
- const OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN = createToken('tramvai opentelemetry http client browser traceparent header filter');
9
+ // TODO: not used for now, wait for TCORE-5381
10
+ const OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN = createToken('tramvai opentelemetry http client browser headers filter');
10
11
 
11
12
  export { OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN, OPENTELEMETRY_PROVIDER_CONFIG_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_ATTRIBUTES_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_TOKEN, OPENTELEMETRY_PROVIDER_SPAN_PROCESSOR_TOKEN, OPENTELEMETRY_PROVIDER_TOKEN, OPENTELEMETRY_TRACER_TOKEN };
package/lib/tokens.es.js CHANGED
@@ -6,6 +6,7 @@ const OPENTELEMETRY_PROVIDER_SPAN_PROCESSOR_TOKEN = createToken('tramvai opentel
6
6
  const OPENTELEMETRY_PROVIDER_RESOURCE_TOKEN = createToken('tramvai opentelemetry provider resource', { scope: Scope.SINGLETON });
7
7
  const OPENTELEMETRY_PROVIDER_RESOURCE_ATTRIBUTES_TOKEN = createToken('tramvai opentelemetry provider resource attributes', { multi: true, scope: Scope.SINGLETON });
8
8
  const OPENTELEMETRY_TRACER_TOKEN = createToken('tramvai opentelemetry tracer', { scope: Scope.SINGLETON });
9
- const OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN = createToken('tramvai opentelemetry http client browser traceparent header filter');
9
+ // TODO: not used for now, wait for TCORE-5381
10
+ const OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN = createToken('tramvai opentelemetry http client browser headers filter');
10
11
 
11
12
  export { OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN, OPENTELEMETRY_PROVIDER_CONFIG_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_ATTRIBUTES_TOKEN, OPENTELEMETRY_PROVIDER_RESOURCE_TOKEN, OPENTELEMETRY_PROVIDER_SPAN_PROCESSOR_TOKEN, OPENTELEMETRY_PROVIDER_TOKEN, OPENTELEMETRY_TRACER_TOKEN };
package/lib/tokens.js CHANGED
@@ -10,7 +10,8 @@ const OPENTELEMETRY_PROVIDER_SPAN_PROCESSOR_TOKEN = dippy.createToken('tramvai o
10
10
  const OPENTELEMETRY_PROVIDER_RESOURCE_TOKEN = dippy.createToken('tramvai opentelemetry provider resource', { scope: dippy.Scope.SINGLETON });
11
11
  const OPENTELEMETRY_PROVIDER_RESOURCE_ATTRIBUTES_TOKEN = dippy.createToken('tramvai opentelemetry provider resource attributes', { multi: true, scope: dippy.Scope.SINGLETON });
12
12
  const OPENTELEMETRY_TRACER_TOKEN = dippy.createToken('tramvai opentelemetry tracer', { scope: dippy.Scope.SINGLETON });
13
- const OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN = dippy.createToken('tramvai opentelemetry http client browser traceparent header filter');
13
+ // TODO: not used for now, wait for TCORE-5381
14
+ const OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN = dippy.createToken('tramvai opentelemetry http client browser headers filter');
14
15
 
15
16
  exports.OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN = OPENTELEMETRY_HTTP_CLIENT_BROWSER_HEADERS_INCLUDE_TOKEN;
16
17
  exports.OPENTELEMETRY_PROVIDER_CONFIG_TOKEN = OPENTELEMETRY_PROVIDER_CONFIG_TOKEN;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tramvai/module-opentelemetry",
3
- "version": "6.68.4",
3
+ "version": "6.77.2",
4
4
  "description": "Интеграция OpenTelemetry",
5
5
  "browser": "lib/browser.js",
6
6
  "main": "lib/server.js",
@@ -27,21 +27,21 @@
27
27
  "@opentelemetry/resources": "^1.28.0",
28
28
  "@opentelemetry/sdk-trace-node": "^1.28.0",
29
29
  "@opentelemetry/semantic-conventions": "^1.28.0",
30
- "@tinkoff/errors": "0.7.1",
30
+ "@tinkoff/errors": "0.7.2",
31
31
  "@tinkoff/utils": "^2.1.2",
32
- "@tramvai/tokens-child-app": "6.68.4",
33
- "@tramvai/tokens-common": "6.68.4",
34
- "@tramvai/tokens-http-client": "6.68.4",
35
- "@tramvai/tokens-metrics": "6.68.4",
36
- "@tramvai/tokens-render": "6.68.4",
37
- "@tramvai/tokens-router": "6.68.4",
38
- "@tramvai/tokens-server": "6.68.4",
39
- "@tramvai/tokens-server-private": "6.68.4",
32
+ "@tramvai/tokens-child-app": "6.77.2",
33
+ "@tramvai/tokens-common": "6.77.2",
34
+ "@tramvai/tokens-http-client": "6.77.2",
35
+ "@tramvai/tokens-metrics": "6.77.2",
36
+ "@tramvai/tokens-render": "6.77.2",
37
+ "@tramvai/tokens-router": "6.77.2",
38
+ "@tramvai/tokens-server": "6.77.2",
39
+ "@tramvai/tokens-server-private": "6.77.2",
40
40
  "path-to-regexp": "^0.1.12"
41
41
  },
42
42
  "peerDependencies": {
43
- "@tinkoff/dippy": "0.12.3",
44
- "@tramvai/core": "6.68.4",
43
+ "@tinkoff/dippy": "0.12.6",
44
+ "@tramvai/core": "6.77.2",
45
45
  "tslib": "^2.4.0"
46
46
  }
47
47
  }