@rsdk/grpc.clients 4.0.0-next.13 → 4.0.0-next.15

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,18 @@
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.0-next.15](https://github.com/R-Vision/rsdk/compare/v4.0.0-next.14...v4.0.0-next.15) (2023-11-30)
7
+
8
+ ### Features
9
+
10
+ * added protocol detector ([#166](https://github.com/R-Vision/rsdk/issues/166)) ([f348995](https://github.com/R-Vision/rsdk/commit/f348995f29648c7392b7375c5b2001197d60eb36))
11
+
12
+ ## [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)
13
+
14
+ ### Features
15
+
16
+ * **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)
17
+
6
18
  ## [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)
7
19
 
8
20
  **Note:** Version bump only for package @rsdk/grpc.clients
@@ -27,7 +39,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
27
39
 
28
40
  ### Features
29
41
 
30
- * Kafka batch producer ([#150](https://github.com/R-Vision/rsdk/issues/150)) ([2faa2f4](https://github.com/R-Vision/rsdk/commit/2faa2f41ca0dbb6d8a92cbf0ab20cf5cefeaf4e9))
42
+ * Kafka batch
43
+ producer ([#150](https://github.com/R-Vision/rsdk/issues/150)) ([2faa2f4](https://github.com/R-Vision/rsdk/commit/2faa2f41ca0dbb6d8a92cbf0ab20cf5cefeaf4e9))
31
44
 
32
45
  ## [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)
33
46
 
@@ -49,7 +62,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
49
62
 
50
63
  ### Bug Fixes
51
64
 
52
- * all yarn peers dependency issues ([e0db9ef](https://github.com/R-Vision/rsdk/commit/e0db9ef1ab8a4df4e1f8ff6f6a9e3728f497549b))
65
+ * all yarn peers dependency
66
+ issues ([e0db9ef](https://github.com/R-Vision/rsdk/commit/e0db9ef1ab8a4df4e1f8ff6f6a9e3728f497549b))
53
67
 
54
68
  ## [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)
55
69
 
@@ -207,7 +221,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
207
221
 
208
222
  ### Bug Fixes
209
223
 
210
- * **grpc-clients:** exceptionMiddleware added to index reexport ([65dde0d](https://github.com/R-Vision/rsdk/commit/65dde0d165839a8af4d71d9b3919c8128ad46a4f))
224
+ * **grpc-clients:** exceptionMiddleware added to index
225
+ reexport ([65dde0d](https://github.com/R-Vision/rsdk/commit/65dde0d165839a8af4d71d9b3919c8128ad46a4f))
211
226
 
212
227
  ## [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)
213
228
 
@@ -221,7 +236,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
221
236
 
222
237
  ### Features
223
238
 
224
- * added exception code to payload ([#92](https://github.com/R-Vision/rsdk/issues/92)) ([6a9565b](https://github.com/R-Vision/rsdk/commit/6a9565b23746122676abb1f5166f9ef8b181864b))
239
+ * added exception code to
240
+ payload ([#92](https://github.com/R-Vision/rsdk/issues/92)) ([6a9565b](https://github.com/R-Vision/rsdk/commit/6a9565b23746122676abb1f5166f9ef8b181864b))
225
241
 
226
242
  ## [3.0.2](https://github.com/R-Vision/rsdk/compare/v3.0.1...v3.0.2) (2023-08-07)
227
243
 
@@ -231,7 +247,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
231
247
 
232
248
  ### Bug Fixes
233
249
 
234
- * **deps:** correctly peerDependencies ([349628f](https://github.com/R-Vision/rsdk/commit/349628f10da46a30d6c8b9f9387e010869318212))
250
+ * **deps:** correctly
251
+ peerDependencies ([349628f](https://github.com/R-Vision/rsdk/commit/349628f10da46a30d6c8b9f9387e010869318212))
235
252
 
236
253
  ## [3.0.1-next.0](https://github.com/R-Vision/rsdk/compare/v3.0.0...v3.0.1-next.0) (2023-08-07)
237
254
 
@@ -257,7 +274,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
257
274
 
258
275
  ### Features
259
276
 
260
- * **grpc.clients:** grpc rich error ([#85](https://github.com/R-Vision/rsdk/issues/85)) ([be99f40](https://github.com/R-Vision/rsdk/commit/be99f408295bf1750f6f0c39e067cca971d973e3))
277
+ * **grpc.clients:** grpc rich
278
+ error ([#85](https://github.com/R-Vision/rsdk/issues/85)) ([be99f40](https://github.com/R-Vision/rsdk/commit/be99f408295bf1750f6f0c39e067cca971d973e3))
261
279
 
262
280
  # [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)
263
281
 
@@ -301,19 +319,22 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
301
319
 
302
320
  ### Features
303
321
 
304
- * **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))
322
+ * **grpc-clients:** added support grpc client
323
+ factory ([#78](https://github.com/R-Vision/rsdk/issues/78)) ([4f9d761](https://github.com/R-Vision/rsdk/commit/4f9d761516abfa0264ee4c707fdd784f7ad9fd0c))
305
324
 
306
325
  # [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)
307
326
 
308
327
  ### Bug Fixes
309
328
 
310
- * gRPC error mapping into rsdk exceptions ([8c6a2b8](https://github.com/R-Vision/rsdk/commit/8c6a2b8276a7a309d26bc21e4c9ae36d7ee4210c))
329
+ * gRPC error mapping into rsdk
330
+ exceptions ([8c6a2b8](https://github.com/R-Vision/rsdk/commit/8c6a2b8276a7a309d26bc21e4c9ae36d7ee4210c))
311
331
 
312
332
  # [2.6.0-next.0](https://github.com/R-Vision/rsdk/compare/v2.5.0...v2.6.0-next.0) (2023-07-03)
313
333
 
314
334
  ### Bug Fixes
315
335
 
316
- * **grpc-clients:** remove verbose generic type for normalize compile (exceeds the maximum length...) ([e58fee8](https://github.com/R-Vision/rsdk/commit/e58fee8b1e8780deef49fa77ac40c8c0e79d82e5))
336
+ * **grpc-clients:** remove verbose generic type for normalize compile (exceeds the maximum
337
+ length...) ([e58fee8](https://github.com/R-Vision/rsdk/commit/e58fee8b1e8780deef49fa77ac40c8c0e79d82e5))
317
338
 
318
339
  # [2.5.0](https://github.com/R-Vision/rsdk/compare/v2.4.4-next.0...v2.5.0) (2023-06-23)
319
340
 
@@ -367,34 +388,41 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
367
388
 
368
389
  ### Features
369
390
 
370
- * added option define for one server and update docs ([970e1f3](https://github.com/R-Vision/rsdk/commit/970e1f3104c45bf6c1102c32afc1750e2f7e299b))
391
+ * added option define for one server and update
392
+ docs ([970e1f3](https://github.com/R-Vision/rsdk/commit/970e1f3104c45bf6c1102c32afc1750e2f7e299b))
371
393
 
372
394
  # [2.1.0](https://github.com/R-Vision/rsdk/compare/v2.0.0...v2.1.0) (2023-06-06)
373
395
 
374
396
  ### Features
375
397
 
376
- * parse camelCase servername for configuration property ([8b60809](https://github.com/R-Vision/rsdk/commit/8b608093e745846fdaca60fc4fbb3da9da64a945))
398
+ * parse camelCase servername for configuration
399
+ property ([8b60809](https://github.com/R-Vision/rsdk/commit/8b608093e745846fdaca60fc4fbb3da9da64a945))
377
400
 
378
401
  # [2.0.0](https://github.com/R-Vision/rsdk/compare/v1.0.12...v2.0.0) (2023-06-06)
379
402
 
380
403
  ### Bug Fixes
381
404
 
382
- * **autodoc:** correct resolve metadata for autodoc ([5e51fe2](https://github.com/R-Vision/rsdk/commit/5e51fe25e48b41f184e667ca94b7225bbc43696e))
383
- * 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))
384
- * 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))
405
+ * **autodoc:** correct resolve metadata for
406
+ autodoc ([5e51fe2](https://github.com/R-Vision/rsdk/commit/5e51fe25e48b41f184e667ca94b7225bbc43696e))
407
+ * cycle deps, remove outDir from base.json in tsconfig, rework interact with AutodocMetadata and RsdkMetadata, fix
408
+ unprovided imports ([cc6434b](https://github.com/R-Vision/rsdk/commit/cc6434b9d165e570bdbb2baad76b00acd14577b2))
409
+ * table node expects only `Record<string, string>`, not Record<string,
410
+ any> ([#35](https://github.com/R-Vision/rsdk/issues/35)) ([f64bc29](https://github.com/R-Vision/rsdk/commit/f64bc29a4879d8565992a1e16e9b045dcf20d6e2))
385
411
 
386
412
  ### Draft
387
413
 
388
- * Pfm 303 static to meta migration ([#45](https://github.com/R-Vision/rsdk/issues/45)) ([d98e303](https://github.com/R-Vision/rsdk/commit/d98e3032f9b10446b478427d841b9209ed68fa2d))
414
+ * Pfm 303 static to meta
415
+ migration ([#45](https://github.com/R-Vision/rsdk/issues/45)) ([d98e303](https://github.com/R-Vision/rsdk/commit/d98e3032f9b10446b478427d841b9209ed68fa2d))
389
416
 
390
417
  ### Features
391
418
 
392
- * added tokens for mock in tests ([#43](https://github.com/R-Vision/rsdk/issues/43)) ([e743e51](https://github.com/R-Vision/rsdk/commit/e743e51016b0d88df12785816d33c9ccb91dbc26))
419
+ * added tokens for mock in
420
+ tests ([#43](https://github.com/R-Vision/rsdk/issues/43)) ([e743e51](https://github.com/R-Vision/rsdk/commit/e743e51016b0d88df12785816d33c9ccb91dbc26))
393
421
 
394
422
  ### BREAKING CHANGES
395
423
 
396
424
  * GrpcClientModule removed
397
- new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
425
+ new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
398
426
 
399
427
  * fix: rework interaction with metadata and generating modules from metadata
400
428
 
@@ -428,7 +456,8 @@ new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
428
456
 
429
457
  ### Bug Fixes
430
458
 
431
- * remove private dependencies from `peerDependencies` section ([0bce6ff](https://github.com/R-Vision/rsdk/commit/0bce6ffb5b699e2ed1dc9aca77cbdbf085267ff7))
459
+ * remove private dependencies from `peerDependencies`
460
+ section ([0bce6ff](https://github.com/R-Vision/rsdk/commit/0bce6ffb5b699e2ed1dc9aca77cbdbf085267ff7))
432
461
 
433
462
  ## 1.0.11 (2023-05-23)
434
463
 
@@ -438,7 +467,8 @@ new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
438
467
 
439
468
  ### Bug Fixes
440
469
 
441
- * add "access: public" to new packages ([04d5983](https://github.com/R-Vision/rsdk/commit/04d5983cfa3e97c5d8219e07208a0499a8c6bc83))
470
+ * add "access: public" to new
471
+ packages ([04d5983](https://github.com/R-Vision/rsdk/commit/04d5983cfa3e97c5d8219e07208a0499a8c6bc83))
442
472
 
443
473
  ## 1.0.9 (2023-05-21)
444
474
 
@@ -468,7 +498,8 @@ new way for declaration with `GrpcServers.define()` and `@InjectGrpcClient`
468
498
 
469
499
  ### Bug Fixes
470
500
 
471
- * builtin make not private in npm ([50c83b6](https://github.com/R-Vision/rsdk/commit/50c83b6454f9a89f1e99d3b33a497ce2c029d8c6))
501
+ * builtin make not private in
502
+ npm ([50c83b6](https://github.com/R-Vision/rsdk/commit/50c83b6454f9a89f1e99d3b33a497ce2c029d8c6))
472
503
 
473
504
  ## 1.0.2 (2023-05-10)
474
505
 
@@ -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.13",
3
+ "version": "4.0.0-next.15",
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.13",
22
- "@rsdk/builtin-contract": "^4.0.0-next.13",
23
- "@rsdk/common": "^4.0.0-next.13",
24
- "@rsdk/core": "^4.0.0-next.13",
25
- "@rsdk/grpc.common": "^4.0.0-next.13",
26
- "@rsdk/logging": "^4.0.0-next.13",
27
- "@rsdk/metadata": "^4.0.0-next.13",
21
+ "@opentelemetry/propagator-b3": "1.18.1",
22
+ "@opentelemetry/sdk-node": "0.39.1",
23
+ "@rsdk/autodoc.protocol": "^4.0.0-next.15",
24
+ "@rsdk/builtin-contract": "^4.0.0-next.15",
25
+ "@rsdk/common": "^4.0.0-next.15",
26
+ "@rsdk/core": "^4.0.0-next.15",
27
+ "@rsdk/grpc.common": "^4.0.0-next.15",
28
+ "@rsdk/logging": "^4.0.0-next.15",
29
+ "@rsdk/metadata": "^4.0.0-next.15",
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": "3fe5f00eff1ac7155d8e42dbbbcbd8a6cfd75e93"
34
+ "gitHead": "8abd89d7800375749b024410dc3465ff40389277"
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
  }