@rsdk/grpc.clients 4.0.0-next.9 → 4.0.1-next.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,58 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [4.0.1-next.0](https://github.com/R-Vision/rsdk/compare/v4.0.0...v4.0.1-next.0) (2023-12-06)
7
+
8
+ **Note:** Version bump only for package @rsdk/grpc.clients
9
+
10
+ ## [4.0.0](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.19...v4.0.0) (2023-12-04)
11
+
12
+ **Note:** Version bump only for package @rsdk/grpc.clients
13
+
14
+ ## [4.0.0-next.19](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.18...v4.0.0-next.19) (2023-12-02)
15
+
16
+ **Note:** Version bump only for package @rsdk/grpc.clients
17
+
18
+ ## [4.0.0-next.18](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.17...v4.0.0-next.18) (2023-12-02)
19
+
20
+ **Note:** Version bump only for package @rsdk/grpc.clients
21
+
22
+ ## [4.0.0-next.17](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.16...v4.0.0-next.17) (2023-12-01)
23
+
24
+ **Note:** Version bump only for package @rsdk/grpc.clients
25
+
26
+ ## [4.0.0-next.16](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.15...v4.0.0-next.16) (2023-11-30)
27
+
28
+ **Note:** Version bump only for package @rsdk/grpc.clients
29
+
30
+ ## [4.0.0-next.15](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.14...v4.0.0-next.15) (2023-11-30)
31
+
32
+ ### Features
33
+
34
+ * added protocol detector ([#166](https://github.com/R-Vision/rsdk/issues/166)) ([f348995](https://github.com/R-Vision/rsdk/commit/f348995f29648c7392b7375c5b2001197d60eb36))
35
+
36
+ ## [4.0.0-next.14](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.13...v4.0.0-next.14) (2023-11-29)
37
+
38
+ ### Features
39
+
40
+ * **core:** PFM-601 Add support send trace id from client to server ([#164](https://github.com/R-Vision/rsdk/issues/164)) ([9e37243](https://github.com/R-Vision/rsdk/commit/9e372437fbb3d7d2b1167b99d07b0ac64cb4013d)), closes [#pfm-601](https://github.com/R-Vision/rsdk/issues/pfm-601) [#pfm-601](https://github.com/R-Vision/rsdk/issues/pfm-601)
41
+
42
+ ## [4.0.0-next.13](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.12...v4.0.0-next.13) (2023-11-29)
43
+
44
+ **Note:** Version bump only for package @rsdk/grpc.clients
45
+
46
+ ## [4.0.0-next.12](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.11...v4.0.0-next.12) (2023-11-29)
47
+
48
+ **Note:** Version bump only for package @rsdk/grpc.clients
49
+
50
+ ## [4.0.0-next.11](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.10...v4.0.0-next.11) (2023-11-29)
51
+
52
+ **Note:** Version bump only for package @rsdk/grpc.clients
53
+
54
+ ## [4.0.0-next.10](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.9...v4.0.0-next.10) (2023-11-29)
55
+
56
+ **Note:** Version bump only for package @rsdk/grpc.clients
57
+
6
58
  ## [4.0.0-next.9](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.8...v4.0.0-next.9) (2023-11-29)
7
59
 
8
60
  **Note:** Version bump only for package @rsdk/grpc.clients
@@ -11,7 +63,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
11
63
 
12
64
  ### Features
13
65
 
14
- * Kafka batch producer ([#150](https://github.com/R-Vision/rsdk/issues/150)) ([2faa2f4](https://github.com/R-Vision/rsdk/commit/2faa2f41ca0dbb6d8a92cbf0ab20cf5cefeaf4e9))
66
+ * Kafka batch
67
+ producer ([#150](https://github.com/R-Vision/rsdk/issues/150)) ([2faa2f4](https://github.com/R-Vision/rsdk/commit/2faa2f41ca0dbb6d8a92cbf0ab20cf5cefeaf4e9))
15
68
 
16
69
  ## [4.0.0-next.7](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.6...v4.0.0-next.7) (2023-11-21)
17
70
 
@@ -33,7 +86,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
33
86
 
34
87
  ### Bug Fixes
35
88
 
36
- * all yarn peers dependency issues ([e0db9ef](https://github.com/R-Vision/rsdk/commit/e0db9ef1ab8a4df4e1f8ff6f6a9e3728f497549b))
89
+ * all yarn peers dependency
90
+ issues ([e0db9ef](https://github.com/R-Vision/rsdk/commit/e0db9ef1ab8a4df4e1f8ff6f6a9e3728f497549b))
37
91
 
38
92
  ## [4.0.0-next.2](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.1...v4.0.0-next.2) (2023-11-10)
39
93
 
@@ -191,7 +245,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
191
245
 
192
246
  ### Bug Fixes
193
247
 
194
- * **grpc-clients:** exceptionMiddleware added to index reexport ([65dde0d](https://github.com/R-Vision/rsdk/commit/65dde0d165839a8af4d71d9b3919c8128ad46a4f))
248
+ * **grpc-clients:** exceptionMiddleware added to index
249
+ reexport ([65dde0d](https://github.com/R-Vision/rsdk/commit/65dde0d165839a8af4d71d9b3919c8128ad46a4f))
195
250
 
196
251
  ## [3.1.0-next.2](https://github.com/R-Vision/rsdk/compare/v3.1.0-next.1...v3.1.0-next.2) (2023-08-08)
197
252
 
@@ -205,7 +260,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
205
260
 
206
261
  ### Features
207
262
 
208
- * added exception code to payload ([#92](https://github.com/R-Vision/rsdk/issues/92)) ([6a9565b](https://github.com/R-Vision/rsdk/commit/6a9565b23746122676abb1f5166f9ef8b181864b))
263
+ * added exception code to
264
+ payload ([#92](https://github.com/R-Vision/rsdk/issues/92)) ([6a9565b](https://github.com/R-Vision/rsdk/commit/6a9565b23746122676abb1f5166f9ef8b181864b))
209
265
 
210
266
  ## [3.0.2](https://github.com/R-Vision/rsdk/compare/v3.0.1...v3.0.2) (2023-08-07)
211
267
 
@@ -215,7 +271,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
215
271
 
216
272
  ### Bug Fixes
217
273
 
218
- * **deps:** correctly peerDependencies ([349628f](https://github.com/R-Vision/rsdk/commit/349628f10da46a30d6c8b9f9387e010869318212))
274
+ * **deps:** correctly
275
+ peerDependencies ([349628f](https://github.com/R-Vision/rsdk/commit/349628f10da46a30d6c8b9f9387e010869318212))
219
276
 
220
277
  ## [3.0.1-next.0](https://github.com/R-Vision/rsdk/compare/v3.0.0...v3.0.1-next.0) (2023-08-07)
221
278
 
@@ -241,7 +298,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
241
298
 
242
299
  ### Features
243
300
 
244
- * **grpc.clients:** grpc rich error ([#85](https://github.com/R-Vision/rsdk/issues/85)) ([be99f40](https://github.com/R-Vision/rsdk/commit/be99f408295bf1750f6f0c39e067cca971d973e3))
301
+ * **grpc.clients:** grpc rich
302
+ error ([#85](https://github.com/R-Vision/rsdk/issues/85)) ([be99f40](https://github.com/R-Vision/rsdk/commit/be99f408295bf1750f6f0c39e067cca971d973e3))
245
303
 
246
304
  # [2.6.0-next.13](https://github.com/R-Vision/rsdk/compare/v2.6.0-next.12...v2.6.0-next.13) (2023-08-01)
247
305
 
@@ -285,19 +343,22 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
285
343
 
286
344
  ### Features
287
345
 
288
- * **grpc-clients:** added support grpc client factory ([#78](https://github.com/R-Vision/rsdk/issues/78)) ([4f9d761](https://github.com/R-Vision/rsdk/commit/4f9d761516abfa0264ee4c707fdd784f7ad9fd0c))
346
+ * **grpc-clients:** added support grpc client
347
+ factory ([#78](https://github.com/R-Vision/rsdk/issues/78)) ([4f9d761](https://github.com/R-Vision/rsdk/commit/4f9d761516abfa0264ee4c707fdd784f7ad9fd0c))
289
348
 
290
349
  # [2.6.0-next.1](https://github.com/R-Vision/rsdk/compare/v2.6.0-next.0...v2.6.0-next.1) (2023-07-04)
291
350
 
292
351
  ### Bug Fixes
293
352
 
294
- * gRPC error mapping into rsdk exceptions ([8c6a2b8](https://github.com/R-Vision/rsdk/commit/8c6a2b8276a7a309d26bc21e4c9ae36d7ee4210c))
353
+ * gRPC error mapping into rsdk
354
+ exceptions ([8c6a2b8](https://github.com/R-Vision/rsdk/commit/8c6a2b8276a7a309d26bc21e4c9ae36d7ee4210c))
295
355
 
296
356
  # [2.6.0-next.0](https://github.com/R-Vision/rsdk/compare/v2.5.0...v2.6.0-next.0) (2023-07-03)
297
357
 
298
358
  ### Bug Fixes
299
359
 
300
- * **grpc-clients:** remove verbose generic type for normalize compile (exceeds the maximum length...) ([e58fee8](https://github.com/R-Vision/rsdk/commit/e58fee8b1e8780deef49fa77ac40c8c0e79d82e5))
360
+ * **grpc-clients:** remove verbose generic type for normalize compile (exceeds the maximum
361
+ length...) ([e58fee8](https://github.com/R-Vision/rsdk/commit/e58fee8b1e8780deef49fa77ac40c8c0e79d82e5))
301
362
 
302
363
  # [2.5.0](https://github.com/R-Vision/rsdk/compare/v2.4.4-next.0...v2.5.0) (2023-06-23)
303
364
 
@@ -351,34 +412,41 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
351
412
 
352
413
  ### Features
353
414
 
354
- * added option define for one server and update docs ([970e1f3](https://github.com/R-Vision/rsdk/commit/970e1f3104c45bf6c1102c32afc1750e2f7e299b))
415
+ * added option define for one server and update
416
+ docs ([970e1f3](https://github.com/R-Vision/rsdk/commit/970e1f3104c45bf6c1102c32afc1750e2f7e299b))
355
417
 
356
418
  # [2.1.0](https://github.com/R-Vision/rsdk/compare/v2.0.0...v2.1.0) (2023-06-06)
357
419
 
358
420
  ### Features
359
421
 
360
- * parse camelCase servername for configuration property ([8b60809](https://github.com/R-Vision/rsdk/commit/8b608093e745846fdaca60fc4fbb3da9da64a945))
422
+ * parse camelCase servername for configuration
423
+ property ([8b60809](https://github.com/R-Vision/rsdk/commit/8b608093e745846fdaca60fc4fbb3da9da64a945))
361
424
 
362
425
  # [2.0.0](https://github.com/R-Vision/rsdk/compare/v1.0.12...v2.0.0) (2023-06-06)
363
426
 
364
427
  ### Bug Fixes
365
428
 
366
- * **autodoc:** correct resolve metadata for autodoc ([5e51fe2](https://github.com/R-Vision/rsdk/commit/5e51fe25e48b41f184e667ca94b7225bbc43696e))
367
- * cycle deps, remove outDir from base.json in tsconfig, rework interact with AutodocMetadata and RsdkMetadata, fix unprovided imports ([cc6434b](https://github.com/R-Vision/rsdk/commit/cc6434b9d165e570bdbb2baad76b00acd14577b2))
368
- * table node expects only `Record<string, string>`, not Record<string, any> ([#35](https://github.com/R-Vision/rsdk/issues/35)) ([f64bc29](https://github.com/R-Vision/rsdk/commit/f64bc29a4879d8565992a1e16e9b045dcf20d6e2))
429
+ * **autodoc:** correct resolve metadata for
430
+ autodoc ([5e51fe2](https://github.com/R-Vision/rsdk/commit/5e51fe25e48b41f184e667ca94b7225bbc43696e))
431
+ * cycle deps, remove outDir from base.json in tsconfig, rework interact with AutodocMetadata and RsdkMetadata, fix
432
+ unprovided imports ([cc6434b](https://github.com/R-Vision/rsdk/commit/cc6434b9d165e570bdbb2baad76b00acd14577b2))
433
+ * table node expects only `Record<string, string>`, not Record<string,
434
+ any> ([#35](https://github.com/R-Vision/rsdk/issues/35)) ([f64bc29](https://github.com/R-Vision/rsdk/commit/f64bc29a4879d8565992a1e16e9b045dcf20d6e2))
369
435
 
370
436
  ### Draft
371
437
 
372
- * Pfm 303 static to meta migration ([#45](https://github.com/R-Vision/rsdk/issues/45)) ([d98e303](https://github.com/R-Vision/rsdk/commit/d98e3032f9b10446b478427d841b9209ed68fa2d))
438
+ * Pfm 303 static to meta
439
+ migration ([#45](https://github.com/R-Vision/rsdk/issues/45)) ([d98e303](https://github.com/R-Vision/rsdk/commit/d98e3032f9b10446b478427d841b9209ed68fa2d))
373
440
 
374
441
  ### Features
375
442
 
376
- * added tokens for mock in tests ([#43](https://github.com/R-Vision/rsdk/issues/43)) ([e743e51](https://github.com/R-Vision/rsdk/commit/e743e51016b0d88df12785816d33c9ccb91dbc26))
443
+ * added tokens for mock in
444
+ tests ([#43](https://github.com/R-Vision/rsdk/issues/43)) ([e743e51](https://github.com/R-Vision/rsdk/commit/e743e51016b0d88df12785816d33c9ccb91dbc26))
377
445
 
378
446
  ### BREAKING CHANGES
379
447
 
380
448
  * GrpcClientModule removed
381
- new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
449
+ new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
382
450
 
383
451
  * fix: rework interaction with metadata and generating modules from metadata
384
452
 
@@ -412,7 +480,8 @@ new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
412
480
 
413
481
  ### Bug Fixes
414
482
 
415
- * remove private dependencies from `peerDependencies` section ([0bce6ff](https://github.com/R-Vision/rsdk/commit/0bce6ffb5b699e2ed1dc9aca77cbdbf085267ff7))
483
+ * remove private dependencies from `peerDependencies`
484
+ section ([0bce6ff](https://github.com/R-Vision/rsdk/commit/0bce6ffb5b699e2ed1dc9aca77cbdbf085267ff7))
416
485
 
417
486
  ## 1.0.11 (2023-05-23)
418
487
 
@@ -422,7 +491,8 @@ new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
422
491
 
423
492
  ### Bug Fixes
424
493
 
425
- * add "access: public" to new packages ([04d5983](https://github.com/R-Vision/rsdk/commit/04d5983cfa3e97c5d8219e07208a0499a8c6bc83))
494
+ * add "access: public" to new
495
+ packages ([04d5983](https://github.com/R-Vision/rsdk/commit/04d5983cfa3e97c5d8219e07208a0499a8c6bc83))
426
496
 
427
497
  ## 1.0.9 (2023-05-21)
428
498
 
@@ -452,7 +522,8 @@ new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
452
522
 
453
523
  ### Bug Fixes
454
524
 
455
- * builtin make not private in npm ([50c83b6](https://github.com/R-Vision/rsdk/commit/50c83b6454f9a89f1e99d3b33a497ce2c029d8c6))
525
+ * builtin make not private in
526
+ npm ([50c83b6](https://github.com/R-Vision/rsdk/commit/50c83b6454f9a89f1e99d3b33a497ce2c029d8c6))
456
527
 
457
528
  ## 1.0.2 (2023-05-10)
458
529
 
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-clients-factory.autodoc-resolver.js","sourceRoot":"","sources":["../../src/metadata/grpc-clients-factory.autodoc-resolver.ts"],"names":[],"mappings":";;;AACA,6DAA0D;AAM1D,2CAAuE;AAEvE,MAAM,iCAAiC;IACrC,OAAO,CAAC,YAAkC;QACxC,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAChC,oDAAwC,CACzC,CAAC;QACF,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,4BAAS,CAClB,IAAI,wBAAK,CACP,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5C,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE;SACzC,CAAC,CAAC,CACJ,EACD,sBAAsB,CACvB,CAAC;IACJ,CAAC;CACF;AAEY,QAAA,iCAAiC,GAC5C,IAAI,iCAAiC,EAAE,CAAC"}
1
+ {"version":3,"file":"grpc-clients-factory.autodoc-resolver.js","sourceRoot":"","sources":["../../src/metadata/grpc-clients-factory.autodoc-resolver.ts"],"names":[],"mappings":";;;AACA,6DAA0D;AAM1D,2CAAuE;AAEvE,MAAM,iCAAiC;IACrC,OAAO,CAAC,YAAkC;QACxC,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAChC,oDAAwC,CACzC,CAAC;QACF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,4BAAS,CAClB,IAAI,wBAAK,CACP,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5C,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE;SACzC,CAAC,CAAC,CACJ,EACD,sBAAsB,CACvB,CAAC;IACJ,CAAC;CACF;AAEY,QAAA,iCAAiC,GAC5C,IAAI,iCAAiC,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-clients.autodoc-resolver.js","sourceRoot":"","sources":["../../src/metadata/grpc-clients.autodoc-resolver.ts"],"names":[],"mappings":";;;AACA,6DAA0D;AAM1D,2CAA+D;AAE/D,MAAM,yBAAyB;IAC7B,OAAO,CAAC,YAAkC;QACxC,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAChC,4CAAgC,CACjC,CAAC;QACF,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,4BAAS,CAClB,IAAI,wBAAK,CACP,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACxD,UAAU;YACV,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE;SACzC,CAAC,CAAC,CACJ,EACD,cAAc,CACf,CAAC;IACJ,CAAC;CACF;AAEY,QAAA,yBAAyB,GAAG,IAAI,yBAAyB,EAAE,CAAC"}
1
+ {"version":3,"file":"grpc-clients.autodoc-resolver.js","sourceRoot":"","sources":["../../src/metadata/grpc-clients.autodoc-resolver.ts"],"names":[],"mappings":";;;AACA,6DAA0D;AAM1D,2CAA+D;AAE/D,MAAM,yBAAyB;IAC7B,OAAO,CAAC,YAAkC;QACxC,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAChC,4CAAgC,CACjC,CAAC;QACF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,4BAAS,CAClB,IAAI,wBAAK,CACP,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACxD,UAAU;YACV,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE;SACzC,CAAC,CAAC,CACJ,EACD,cAAc,CACf,CAAC;IACJ,CAAC;CACF;AAEY,QAAA,yBAAyB,GAAG,IAAI,yBAAyB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"exception-mapper.middleware.js","sourceRoot":"","sources":["../../src/middleware/exception-mapper.middleware.ts"],"names":[],"mappings":";;;AAAA,2EAAyE;AAEzE,qCASoB;AACpB,yCAAkE;AAGlE;;GAEG;AACI,MAAM,yBAAyB,GAAG,GAAqB,EAAE;AAC9D,+DAA+D;AAC/D,KAAK,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO;IAC5B,IAAI,MAA0B,CAAC;IAE/B,IAAI;QACF,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACpC,GAAG,OAAO;YACV;;;eAGG;YACH,SAAS,CAAC,OAAO;gBACf,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBAE7D,IAAI,aAAa,IAAI,IAAI,EAAE;oBACzB,MAAM,GAAG,cAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;iBACvC;gBAED,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;SACF,CAAC,CAAC;KACJ;IAAC,OAAO,KAAc,EAAE;QACvB,IAAI,CAAC,CAAC,KAAK,YAAY,uBAAW,CAAC,EAAE;YACnC,MAAM,IAAI,wBAAiB,CAAC,qCAAqC,EAAE;gBACjE,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;SACJ;QAED,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,mBAAmB,CAAC;QACxE,MAAM,KAAK,GAAoB;YAC7B,OAAO,EAAE,MAAM,EAAE,OAAO;YACxB,IAAI,EAAE,MAAM,EAAE,aAAa;YAC3B,KAAK,EAAE,KAAK;SACb,CAAC;QAEF;;WAEG;QAEH,qDAAqD;QACrD,QAAQ,KAAK,CAAC,IAAI,EAAE;YAClB,KAAK,kBAAc,CAAC,iBAAiB;gBACnC,MAAM,IAAI,uBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC7C,KAAK,kBAAc,CAAC,gBAAgB;gBAClC,MAAM,IAAI,qBAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC3C,KAAK,kBAAc,CAAC,cAAc;gBAChC,MAAM,IAAI,+BAAwB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACrD,KAAK,kBAAc,CAAC,mBAAmB;gBACrC,MAAM,IAAI,wBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC9C,KAAK,kBAAc,CAAC,eAAe;gBACjC,MAAM,IAAI,oBAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC1C,KAAK,kBAAc,CAAC,iBAAiB;gBACnC,MAAM,IAAI,0BAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAChD,KAAK,kBAAc,CAAC,SAAS;gBAC3B,MAAM,IAAI,wBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC9C;gBACE,MAAM,IAAI,wBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SAC/C;KACF;AACH,CAAC,CAAC;AA5DS,QAAA,yBAAyB,6BA4DlC"}
1
+ {"version":3,"file":"exception-mapper.middleware.js","sourceRoot":"","sources":["../../src/middleware/exception-mapper.middleware.ts"],"names":[],"mappings":";;;AAAA,2EAAyE;AAEzE,qCASoB;AACpB,yCAAkE;AAGlE;;GAEG;AACI,MAAM,yBAAyB,GAAG,GAAqB,EAAE;AAC9D,+DAA+D;AAC/D,KAAK,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO;IAC5B,IAAI,MAA0B,CAAC;IAE/B,IAAI,CAAC;QACH,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACpC,GAAG,OAAO;YACV;;;eAGG;YACH,SAAS,CAAC,OAAO;gBACf,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBAE7D,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;oBAC1B,MAAM,GAAG,cAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBACxC,CAAC;gBAED,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,KAAK,YAAY,uBAAW,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,wBAAiB,CAAC,qCAAqC,EAAE;gBACjE,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;QACL,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,mBAAmB,CAAC;QACxE,MAAM,KAAK,GAAoB;YAC7B,OAAO,EAAE,MAAM,EAAE,OAAO;YACxB,IAAI,EAAE,MAAM,EAAE,aAAa;YAC3B,KAAK,EAAE,KAAK;SACb,CAAC;QAEF;;WAEG;QAEH,qDAAqD;QACrD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,kBAAc,CAAC,iBAAiB;gBACnC,MAAM,IAAI,uBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC7C,KAAK,kBAAc,CAAC,gBAAgB;gBAClC,MAAM,IAAI,qBAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC3C,KAAK,kBAAc,CAAC,cAAc;gBAChC,MAAM,IAAI,+BAAwB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACrD,KAAK,kBAAc,CAAC,mBAAmB;gBACrC,MAAM,IAAI,wBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC9C,KAAK,kBAAc,CAAC,eAAe;gBACjC,MAAM,IAAI,oBAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC1C,KAAK,kBAAc,CAAC,iBAAiB;gBACnC,MAAM,IAAI,0BAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAChD,KAAK,kBAAc,CAAC,SAAS;gBAC3B,MAAM,IAAI,wBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC9C;gBACE,MAAM,IAAI,wBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AA5DS,QAAA,yBAAyB,6BA4DlC"}
@@ -0,0 +1,5 @@
1
+ import type { ClientMiddleware } from 'nice-grpc';
2
+ /**
3
+ * Middleware для клиента GRPC, который пробрасывает **traceId** и **spanId** из текущего приложения в стороннее через Metadata
4
+ */
5
+ export declare const opentelemetryMiddleware: () => ClientMiddleware;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.opentelemetryMiddleware = void 0;
4
+ const propagator_b3_1 = require("@opentelemetry/propagator-b3");
5
+ const core_1 = require("@rsdk/core");
6
+ const nice_grpc_1 = require("nice-grpc");
7
+ /**
8
+ * Middleware для клиента GRPC, который пробрасывает **traceId** и **spanId** из текущего приложения в стороннее через Metadata
9
+ */
10
+ const opentelemetryMiddleware = () =>
11
+ // eslint-disable-next-line unicorn/consistent-function-scoping
12
+ async function* (call, options) {
13
+ const metadata = options.metadata ?? new nice_grpc_1.Metadata();
14
+ const traceId = core_1.ActiveSpanStorage.getInstance()
15
+ ?.getActiveSpan()
16
+ ?.spanContext().traceId;
17
+ if (traceId) {
18
+ metadata.append(propagator_b3_1.X_B3_TRACE_ID, traceId);
19
+ }
20
+ const spanId = core_1.ActiveSpanStorage.getInstance()
21
+ ?.getActiveSpan()
22
+ ?.spanContext().spanId;
23
+ if (spanId) {
24
+ metadata.append(propagator_b3_1.X_B3_PARENT_SPAN_ID, spanId);
25
+ }
26
+ options.metadata = metadata;
27
+ return yield* call.next(call.request, {
28
+ ...options,
29
+ });
30
+ };
31
+ exports.opentelemetryMiddleware = opentelemetryMiddleware;
32
+ //# sourceMappingURL=opentelemetry.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opentelemetry.middleware.js","sourceRoot":"","sources":["../../src/middleware/opentelemetry.middleware.ts"],"names":[],"mappings":";;;AAAA,gEAGsC;AACtC,qCAA+C;AAE/C,yCAAqC;AAErC;;GAEG;AACI,MAAM,uBAAuB,GAAG,GAAqB,EAAE;AAC5D,+DAA+D;AAC/D,KAAK,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO;IAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,oBAAQ,EAAE,CAAC;IAEpD,MAAM,OAAO,GAAG,wBAAiB,CAAC,WAAW,EAAE;QAC7C,EAAE,aAAa,EAAE;QACjB,EAAE,WAAW,EAAE,CAAC,OAAO,CAAC;IAC1B,IAAI,OAAO,EAAE,CAAC;QACZ,QAAQ,CAAC,MAAM,CAAC,6BAAa,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,MAAM,GAAG,wBAAiB,CAAC,WAAW,EAAE;QAC5C,EAAE,aAAa,EAAE;QACjB,EAAE,WAAW,EAAE,CAAC,MAAM,CAAC;IACzB,IAAI,MAAM,EAAE,CAAC;QACX,QAAQ,CAAC,MAAM,CAAC,mCAAmB,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAE5B,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;QACpC,GAAG,OAAO;KACX,CAAC,CAAC;AACL,CAAC,CAAC;AAxBS,QAAA,uBAAuB,2BAwBhC"}
@@ -0,0 +1,5 @@
1
+ import type { ClientMiddleware } from 'nice-grpc';
2
+ /**
3
+ * Мидл варя для клиента GRPC, для проброса **requestId** из текущего приложения в стороннее через Metadata
4
+ */
5
+ export declare const requestMetadataMiddleware: () => ClientMiddleware;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.requestMetadataMiddleware = void 0;
4
+ const core_1 = require("@rsdk/core");
5
+ const nice_grpc_1 = require("nice-grpc");
6
+ /**
7
+ * Мидл варя для клиента GRPC, для проброса **requestId** из текущего приложения в стороннее через Metadata
8
+ */
9
+ const requestMetadataMiddleware = () =>
10
+ // eslint-disable-next-line unicorn/consistent-function-scoping
11
+ async function* (call, options) {
12
+ const requestMetadata = await core_1.RequestMetadataStorage.getInstance()?.getRequestMetadata();
13
+ if (!requestMetadata) {
14
+ return yield* call.next(call.request, {
15
+ ...options,
16
+ });
17
+ }
18
+ const metadata = options.metadata ?? new nice_grpc_1.Metadata();
19
+ const requestId = requestMetadata.requestId;
20
+ if (requestId) {
21
+ metadata.append(core_1.X_REQUEST_ID, requestId);
22
+ }
23
+ options.metadata = metadata;
24
+ return yield* call.next(call.request, {
25
+ ...options,
26
+ });
27
+ };
28
+ exports.requestMetadataMiddleware = requestMetadataMiddleware;
29
+ //# sourceMappingURL=request-metadata.middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-metadata.middleware.js","sourceRoot":"","sources":["../../src/middleware/request-metadata.middleware.ts"],"names":[],"mappings":";;;AAAA,qCAAkE;AAElE,yCAAqC;AAErC;;GAEG;AACI,MAAM,yBAAyB,GAAG,GAAqB,EAAE;AAC9D,+DAA+D;AAC/D,KAAK,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO;IAC5B,MAAM,eAAe,GACnB,MAAM,6BAAsB,CAAC,WAAW,EAAE,EAAE,kBAAkB,EAAE,CAAC;IACnE,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACpC,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,oBAAQ,EAAE,CAAC;IAEpD,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC;IAC5C,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,CAAC,MAAM,CAAC,mBAAY,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAE5B,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;QACpC,GAAG,OAAO;KACX,CAAC,CAAC;AACL,CAAC,CAAC;AAtBS,QAAA,yBAAyB,6BAsBlC"}
@@ -2,15 +2,17 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GrpcClientRepository = void 0;
4
4
  const nice_grpc_1 = require("nice-grpc");
5
- const nice_grpc_opentelemetry_1 = require("nice-grpc-opentelemetry");
6
5
  const exception_mapper_middleware_1 = require("../middleware/exception-mapper.middleware");
6
+ const opentelemetry_middleware_1 = require("../middleware/opentelemetry.middleware");
7
+ const request_metadata_middleware_1 = require("../middleware/request-metadata.middleware");
7
8
  /**
8
9
  * Простое кеш хранилище внутри DI для кеширования на замену статике
9
10
  */
10
11
  class GrpcClientRepository {
11
12
  static factory = (0, nice_grpc_1.createClientFactory)()
12
- .use((0, nice_grpc_opentelemetry_1.openTelemetryClientMiddleware)())
13
- .use((0, exception_mapper_middleware_1.exceptionMapperMiddleware)());
13
+ .use((0, exception_mapper_middleware_1.exceptionMapperMiddleware)())
14
+ .use((0, opentelemetry_middleware_1.opentelemetryMiddleware)())
15
+ .use((0, request_metadata_middleware_1.requestMetadataMiddleware)());
14
16
  // Caches
15
17
  channels = new Map();
16
18
  clients = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"grpc-client.repository.js","sourceRoot":"","sources":["../../src/repository/grpc-client.repository.ts"],"names":[],"mappings":";;;AAEA,yCAA+D;AAE/D,qEAAwE;AAExE,2FAAsF;AAEtF;;GAEG;AACH,MAAa,oBAAoB;IACvB,MAAM,CAAC,OAAO,GAAG,IAAA,+BAAmB,GAAE;SAC3C,GAAG,CAAC,IAAA,uDAA6B,GAAE,CAAC;SACpC,GAAG,CAAC,IAAA,uDAAyB,GAAE,CAAC,CAAC;IAEpC,SAAS;IACA,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAC;IACtC,OAAO,GAAG,IAAI,GAAG,EAA2C,CAAC;IAEtE,cAAc,CAAC,OAAe,EAAE,YAAoB;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAA,yBAAa,EAAC,OAAO,CAAC,CAAC;QAE1E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAEzC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,aAAa,CACX,UAAmC,EACnC,OAA8B,EAC9B,WAAmB;QAEnB,MAAM,OAAO,GACX,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;YAC7B,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAE3D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAEvC,OAAO,OAAO,CAAC;IACjB,CAAC;;AA7BH,oDA8BC"}
1
+ {"version":3,"file":"grpc-client.repository.js","sourceRoot":"","sources":["../../src/repository/grpc-client.repository.ts"],"names":[],"mappings":";;;AAEA,yCAA+D;AAG/D,2FAAsF;AACtF,qFAAiF;AACjF,2FAAsF;AAEtF;;GAEG;AACH,MAAa,oBAAoB;IACvB,MAAM,CAAC,OAAO,GAAG,IAAA,+BAAmB,GAAE;SAC3C,GAAG,CAAC,IAAA,uDAAyB,GAAE,CAAC;SAChC,GAAG,CAAC,IAAA,kDAAuB,GAAE,CAAC;SAC9B,GAAG,CAAC,IAAA,uDAAyB,GAAE,CAAC,CAAC;IAEpC,SAAS;IACA,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAC;IACtC,OAAO,GAAG,IAAI,GAAG,EAA2C,CAAC;IAEtE,cAAc,CAAC,OAAe,EAAE,YAAoB;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAA,yBAAa,EAAC,OAAO,CAAC,CAAC;QAE1E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAEzC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,aAAa,CACX,UAAmC,EACnC,OAA8B,EAC9B,WAAmB;QAEnB,MAAM,OAAO,GACX,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;YAC7B,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAE3D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAEvC,OAAO,OAAO,CAAC;IACjB,CAAC;;AA9BH,oDA+BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"grpc.servers.js","sourceRoot":"","sources":["../../src/servers/grpc.servers.ts"],"names":[],"mappings":";;;AAQA,MAAa,WAAW;IACtB,MAAM,CAAC,MAAM,CACX,WAAmC;QAEnC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CACnD,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE;YAC3B,OAAO;gBACL,UAAU;gBACV,WAAW,CAAC,eAAe,CAAC,UAAU,EAAE,UAAU,CAAC;aACpD,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,OAAO,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,eAAe,CAIpB,UAAuB,EACvB,WAAoC;QAEpC,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CACpD,CAAC,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,EAAE;YAC5B,OAAO;gBACL,WAAW;gBACX;oBACE,UAAU;oBACV,WAAW;oBACX,UAAU;iBACX;aACF,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,OAAO,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,iBAAiB,CAItB,MAAe;QACf,MAAM,WAAW,GAA2B,EAAE,CAAC;QAE/C,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YAC9C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;gBAC7C,WAAW,CAAC,IAAI,CAAC,KAA6B,CAAC,CAAC;aACjD;SACF;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AArDD,kCAqDC"}
1
+ {"version":3,"file":"grpc.servers.js","sourceRoot":"","sources":["../../src/servers/grpc.servers.ts"],"names":[],"mappings":";;;AAQA,MAAa,WAAW;IACtB,MAAM,CAAC,MAAM,CACX,WAAmC;QAEnC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CACnD,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE;YAC3B,OAAO;gBACL,UAAU;gBACV,WAAW,CAAC,eAAe,CAAC,UAAU,EAAE,UAAU,CAAC;aACpD,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,OAAO,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,eAAe,CAIpB,UAAuB,EACvB,WAAoC;QAEpC,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CACpD,CAAC,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,EAAE;YAC5B,OAAO;gBACL,WAAW;gBACX;oBACE,UAAU;oBACV,WAAW;oBACX,UAAU;iBACX;aACF,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,OAAO,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,iBAAiB,CAItB,MAAe;QACf,MAAM,WAAW,GAA2B,EAAE,CAAC;QAE/C,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9C,WAAW,CAAC,IAAI,CAAC,KAA6B,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AArDD,kCAqDC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rsdk/grpc.clients",
3
- "version": "4.0.0-next.9",
3
+ "version": "4.0.1-next.0",
4
4
  "description": "Grpc clients infrastructure",
5
5
  "license": "Apache License 2.0",
6
6
  "publishConfig": {
@@ -18,19 +18,18 @@
18
18
  "@nestjs/common": "^10.0.0",
19
19
  "@nestjs/core": "^10.0.0",
20
20
  "@nestjs/microservices": "^10.0.0",
21
- "@rsdk/autodoc.protocol": "^4.0.0-next.9",
22
- "@rsdk/builtin-contract": "^4.0.0-next.9",
23
- "@rsdk/common": "^4.0.0-next.9",
24
- "@rsdk/core": "^4.0.0-next.9",
25
- "@rsdk/grpc.common": "^4.0.0-next.9",
26
- "@rsdk/logging": "^4.0.0-next.9",
27
- "@rsdk/metadata": "^4.0.0-next.9",
21
+ "@opentelemetry/propagator-b3": "1.18.1",
22
+ "@opentelemetry/sdk-node": "0.39.1",
23
+ "@rsdk/autodoc.protocol": "^4.0.1-next.0",
24
+ "@rsdk/builtin-contract": "^4.0.1-next.0",
25
+ "@rsdk/common": "^4.0.1-next.0",
26
+ "@rsdk/core": "^4.0.1-next.0",
27
+ "@rsdk/grpc.common": "^4.0.1-next.0",
28
+ "@rsdk/logging": "^4.0.1-next.0",
29
+ "@rsdk/metadata": "^4.0.1-next.0",
28
30
  "nice-grpc": "^2.1.4",
29
31
  "reflect-metadata": "^0.1.13",
30
32
  "rxjs": "^7.8.1"
31
33
  },
32
- "dependencies": {
33
- "nice-grpc-opentelemetry": "^0.1.2"
34
- },
35
- "gitHead": "889228ebf4076fafc1c7fce4406b1ea5a3d985ff"
34
+ "gitHead": "772c1ca796c9a5b279274d6a6fb1a356e64aa71f"
36
35
  }
@@ -0,0 +1,36 @@
1
+ import {
2
+ X_B3_PARENT_SPAN_ID,
3
+ X_B3_TRACE_ID,
4
+ } from '@opentelemetry/propagator-b3';
5
+ import { ActiveSpanStorage } from '@rsdk/core';
6
+ import type { ClientMiddleware } from 'nice-grpc';
7
+ import { Metadata } from 'nice-grpc';
8
+
9
+ /**
10
+ * Middleware для клиента GRPC, который пробрасывает **traceId** и **spanId** из текущего приложения в стороннее через Metadata
11
+ */
12
+ export const opentelemetryMiddleware = (): ClientMiddleware =>
13
+ // eslint-disable-next-line unicorn/consistent-function-scoping
14
+ async function* (call, options) {
15
+ const metadata = options.metadata ?? new Metadata();
16
+
17
+ const traceId = ActiveSpanStorage.getInstance()
18
+ ?.getActiveSpan()
19
+ ?.spanContext().traceId;
20
+ if (traceId) {
21
+ metadata.append(X_B3_TRACE_ID, traceId);
22
+ }
23
+
24
+ const spanId = ActiveSpanStorage.getInstance()
25
+ ?.getActiveSpan()
26
+ ?.spanContext().spanId;
27
+ if (spanId) {
28
+ metadata.append(X_B3_PARENT_SPAN_ID, spanId);
29
+ }
30
+
31
+ options.metadata = metadata;
32
+
33
+ return yield* call.next(call.request, {
34
+ ...options,
35
+ });
36
+ };
@@ -0,0 +1,30 @@
1
+ import { RequestMetadataStorage, X_REQUEST_ID } from '@rsdk/core';
2
+ import type { ClientMiddleware } from 'nice-grpc';
3
+ import { Metadata } from 'nice-grpc';
4
+
5
+ /**
6
+ * Мидл варя для клиента GRPC, для проброса **requestId** из текущего приложения в стороннее через Metadata
7
+ */
8
+ export const requestMetadataMiddleware = (): ClientMiddleware =>
9
+ // eslint-disable-next-line unicorn/consistent-function-scoping
10
+ async function* (call, options) {
11
+ const requestMetadata =
12
+ await RequestMetadataStorage.getInstance()?.getRequestMetadata();
13
+ if (!requestMetadata) {
14
+ return yield* call.next(call.request, {
15
+ ...options,
16
+ });
17
+ }
18
+ const metadata = options.metadata ?? new Metadata();
19
+
20
+ const requestId = requestMetadata.requestId;
21
+ if (requestId) {
22
+ metadata.append(X_REQUEST_ID, requestId);
23
+ }
24
+
25
+ options.metadata = metadata;
26
+
27
+ return yield* call.next(call.request, {
28
+ ...options,
29
+ });
30
+ };
@@ -2,17 +2,19 @@ import type { ChannelImplementation } from '@grpc/grpc-js/build/src/channel';
2
2
  import type { Channel, Client } from 'nice-grpc';
3
3
  import { createChannel, createClientFactory } from 'nice-grpc';
4
4
  import type { CompatServiceDefinition } from 'nice-grpc/lib/service-definitions';
5
- import { openTelemetryClientMiddleware } from 'nice-grpc-opentelemetry';
6
5
 
7
6
  import { exceptionMapperMiddleware } from '../middleware/exception-mapper.middleware';
7
+ import { opentelemetryMiddleware } from '../middleware/opentelemetry.middleware';
8
+ import { requestMetadataMiddleware } from '../middleware/request-metadata.middleware';
8
9
 
9
10
  /**
10
11
  * Простое кеш хранилище внутри DI для кеширования на замену статике
11
12
  */
12
13
  export class GrpcClientRepository {
13
14
  private static factory = createClientFactory()
14
- .use(openTelemetryClientMiddleware())
15
- .use(exceptionMapperMiddleware());
15
+ .use(exceptionMapperMiddleware())
16
+ .use(opentelemetryMiddleware())
17
+ .use(requestMetadataMiddleware());
16
18
 
17
19
  // Caches
18
20
  readonly channels = new Map<string, Channel>();
package/tsconfig.json CHANGED
@@ -1,10 +1,19 @@
1
1
  {
2
-
3
2
  "extends": "@rsdk/tsconfig/base.json",
4
3
  "compilerOptions": {
5
4
  "declaration": true,
6
5
  "outDir": "dist"
7
6
  },
8
- "include": ["src/**/*"],
9
- "exclude": ["node_modules", "dist", "test", "**/*.spec.ts", "**/*.test.ts", "**/*.spec.e2e.ts", "**/*.test.e2e.ts"]
7
+ "include": [
8
+ "src/**/*"
9
+ ],
10
+ "exclude": [
11
+ "node_modules",
12
+ "dist",
13
+ "test",
14
+ "**/*.spec.ts",
15
+ "**/*.test.ts",
16
+ "**/*.spec.e2e.ts",
17
+ "**/*.test.e2e.ts"
18
+ ]
10
19
  }