@nebius/js-sdk 0.2.9 → 0.2.10

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 (165) hide show
  1. package/dist/cjs/api/nebius/iam/v1/index.d.ts +4 -0
  2. package/dist/cjs/api/nebius/iam/v1/index.d.ts.map +1 -1
  3. package/dist/cjs/api/nebius/iam/v1/index.js.map +1 -1
  4. package/dist/cjs/index.d.ts +2 -0
  5. package/dist/cjs/index.d.ts.map +1 -1
  6. package/dist/cjs/index.js +2 -0
  7. package/dist/cjs/index.js.map +1 -1
  8. package/dist/cjs/runtime/cli_config.d.ts +12 -1
  9. package/dist/cjs/runtime/cli_config.d.ts.map +1 -1
  10. package/dist/cjs/runtime/cli_config.js +243 -135
  11. package/dist/cjs/runtime/cli_config.js.map +1 -1
  12. package/dist/cjs/runtime/cli_config_interfaces.d.ts +11 -2
  13. package/dist/cjs/runtime/cli_config_interfaces.d.ts.map +1 -1
  14. package/dist/cjs/runtime/error.d.ts.map +1 -1
  15. package/dist/cjs/runtime/error.js.map +1 -1
  16. package/dist/cjs/runtime/keepalive.d.ts +29 -0
  17. package/dist/cjs/runtime/keepalive.d.ts.map +1 -0
  18. package/dist/cjs/runtime/keepalive.js +112 -0
  19. package/dist/cjs/runtime/keepalive.js.map +1 -0
  20. package/dist/cjs/runtime/metrics.d.ts +85 -0
  21. package/dist/cjs/runtime/metrics.d.ts.map +1 -0
  22. package/dist/cjs/runtime/metrics.js +241 -0
  23. package/dist/cjs/runtime/metrics.js.map +1 -0
  24. package/dist/cjs/runtime/protos/wkt.d.ts.map +1 -1
  25. package/dist/cjs/runtime/protos/wkt.js.map +1 -1
  26. package/dist/cjs/runtime/token/exchangeable.d.ts +5 -2
  27. package/dist/cjs/runtime/token/exchangeable.d.ts.map +1 -1
  28. package/dist/cjs/runtime/token/exchangeable.js +52 -34
  29. package/dist/cjs/runtime/token/exchangeable.js.map +1 -1
  30. package/dist/cjs/runtime/token/federated_credentials.d.ts +7 -3
  31. package/dist/cjs/runtime/token/federated_credentials.d.ts.map +1 -1
  32. package/dist/cjs/runtime/token/federated_credentials.js +14 -3
  33. package/dist/cjs/runtime/token/federated_credentials.js.map +1 -1
  34. package/dist/cjs/runtime/token/federation_account.d.ts +4 -0
  35. package/dist/cjs/runtime/token/federation_account.d.ts.map +1 -1
  36. package/dist/cjs/runtime/token/federation_account.js +10 -1
  37. package/dist/cjs/runtime/token/federation_account.js.map +1 -1
  38. package/dist/cjs/runtime/token/federation_bearer/index.d.ts +4 -1
  39. package/dist/cjs/runtime/token/federation_bearer/index.d.ts.map +1 -1
  40. package/dist/cjs/runtime/token/federation_bearer/index.js +42 -25
  41. package/dist/cjs/runtime/token/federation_bearer/index.js.map +1 -1
  42. package/dist/cjs/runtime/token/file.d.ts +6 -2
  43. package/dist/cjs/runtime/token/file.d.ts.map +1 -1
  44. package/dist/cjs/runtime/token/file.js +33 -11
  45. package/dist/cjs/runtime/token/file.js.map +1 -1
  46. package/dist/cjs/runtime/token/file_cache/async_renewable_bearer.d.ts +8 -3
  47. package/dist/cjs/runtime/token/file_cache/async_renewable_bearer.d.ts.map +1 -1
  48. package/dist/cjs/runtime/token/file_cache/async_renewable_bearer.js +110 -56
  49. package/dist/cjs/runtime/token/file_cache/async_renewable_bearer.js.map +1 -1
  50. package/dist/cjs/runtime/token/file_cache/file_bearer.d.ts +4 -1
  51. package/dist/cjs/runtime/token/file_cache/file_bearer.d.ts.map +1 -1
  52. package/dist/cjs/runtime/token/file_cache/file_bearer.js +25 -4
  53. package/dist/cjs/runtime/token/file_cache/file_bearer.js.map +1 -1
  54. package/dist/cjs/runtime/token/file_cache/renewable_bearer.d.ts +5 -2
  55. package/dist/cjs/runtime/token/file_cache/renewable_bearer.d.ts.map +1 -1
  56. package/dist/cjs/runtime/token/file_cache/renewable_bearer.js +47 -7
  57. package/dist/cjs/runtime/token/file_cache/renewable_bearer.js.map +1 -1
  58. package/dist/cjs/runtime/token/renewable.d.ts +8 -3
  59. package/dist/cjs/runtime/token/renewable.d.ts.map +1 -1
  60. package/dist/cjs/runtime/token/renewable.js +101 -54
  61. package/dist/cjs/runtime/token/renewable.js.map +1 -1
  62. package/dist/cjs/runtime/token/service_account.d.ts +7 -3
  63. package/dist/cjs/runtime/token/service_account.d.ts.map +1 -1
  64. package/dist/cjs/runtime/token/service_account.js +18 -6
  65. package/dist/cjs/runtime/token/service_account.js.map +1 -1
  66. package/dist/cjs/runtime/token.d.ts +2 -1
  67. package/dist/cjs/runtime/token.d.ts.map +1 -1
  68. package/dist/cjs/runtime/token.js +8 -4
  69. package/dist/cjs/runtime/token.js.map +1 -1
  70. package/dist/cjs/runtime/util/golang_parsers.d.ts +7 -0
  71. package/dist/cjs/runtime/util/golang_parsers.d.ts.map +1 -0
  72. package/dist/cjs/runtime/util/golang_parsers.js +81 -0
  73. package/dist/cjs/runtime/util/golang_parsers.js.map +1 -0
  74. package/dist/cjs/sdk.d.ts +15 -4
  75. package/dist/cjs/sdk.d.ts.map +1 -1
  76. package/dist/cjs/sdk.js +78 -49
  77. package/dist/cjs/sdk.js.map +1 -1
  78. package/dist/cjs/version.d.ts +1 -1
  79. package/dist/cjs/version.d.ts.map +1 -1
  80. package/dist/cjs/version.js +1 -1
  81. package/dist/cjs/version.js.map +1 -1
  82. package/dist/esm/api/nebius/iam/v1/index.d.ts +4 -0
  83. package/dist/esm/api/nebius/iam/v1/index.d.ts.map +1 -1
  84. package/dist/esm/api/nebius/iam/v1/index.js.map +1 -1
  85. package/dist/esm/index.d.ts +2 -0
  86. package/dist/esm/index.d.ts.map +1 -1
  87. package/dist/esm/index.js +2 -0
  88. package/dist/esm/index.js.map +1 -1
  89. package/dist/esm/runtime/cli_config.d.ts +12 -1
  90. package/dist/esm/runtime/cli_config.d.ts.map +1 -1
  91. package/dist/esm/runtime/cli_config.js +243 -135
  92. package/dist/esm/runtime/cli_config.js.map +1 -1
  93. package/dist/esm/runtime/cli_config_interfaces.d.ts +11 -2
  94. package/dist/esm/runtime/cli_config_interfaces.d.ts.map +1 -1
  95. package/dist/esm/runtime/error.d.ts.map +1 -1
  96. package/dist/esm/runtime/error.js +1 -1
  97. package/dist/esm/runtime/error.js.map +1 -1
  98. package/dist/esm/runtime/keepalive.d.ts +29 -0
  99. package/dist/esm/runtime/keepalive.d.ts.map +1 -0
  100. package/dist/esm/runtime/keepalive.js +105 -0
  101. package/dist/esm/runtime/keepalive.js.map +1 -0
  102. package/dist/esm/runtime/metrics.d.ts +85 -0
  103. package/dist/esm/runtime/metrics.d.ts.map +1 -0
  104. package/dist/esm/runtime/metrics.js +228 -0
  105. package/dist/esm/runtime/metrics.js.map +1 -0
  106. package/dist/esm/runtime/protos/wkt.d.ts.map +1 -1
  107. package/dist/esm/runtime/protos/wkt.js +1 -1
  108. package/dist/esm/runtime/protos/wkt.js.map +1 -1
  109. package/dist/esm/runtime/token/exchangeable.d.ts +5 -2
  110. package/dist/esm/runtime/token/exchangeable.d.ts.map +1 -1
  111. package/dist/esm/runtime/token/exchangeable.js +52 -34
  112. package/dist/esm/runtime/token/exchangeable.js.map +1 -1
  113. package/dist/esm/runtime/token/federated_credentials.d.ts +7 -3
  114. package/dist/esm/runtime/token/federated_credentials.d.ts.map +1 -1
  115. package/dist/esm/runtime/token/federated_credentials.js +14 -3
  116. package/dist/esm/runtime/token/federated_credentials.js.map +1 -1
  117. package/dist/esm/runtime/token/federation_account.d.ts +4 -0
  118. package/dist/esm/runtime/token/federation_account.d.ts.map +1 -1
  119. package/dist/esm/runtime/token/federation_account.js +10 -1
  120. package/dist/esm/runtime/token/federation_account.js.map +1 -1
  121. package/dist/esm/runtime/token/federation_bearer/index.d.ts +4 -1
  122. package/dist/esm/runtime/token/federation_bearer/index.d.ts.map +1 -1
  123. package/dist/esm/runtime/token/federation_bearer/index.js +42 -25
  124. package/dist/esm/runtime/token/federation_bearer/index.js.map +1 -1
  125. package/dist/esm/runtime/token/file.d.ts +6 -2
  126. package/dist/esm/runtime/token/file.d.ts.map +1 -1
  127. package/dist/esm/runtime/token/file.js +33 -11
  128. package/dist/esm/runtime/token/file.js.map +1 -1
  129. package/dist/esm/runtime/token/file_cache/async_renewable_bearer.d.ts +8 -3
  130. package/dist/esm/runtime/token/file_cache/async_renewable_bearer.d.ts.map +1 -1
  131. package/dist/esm/runtime/token/file_cache/async_renewable_bearer.js +110 -56
  132. package/dist/esm/runtime/token/file_cache/async_renewable_bearer.js.map +1 -1
  133. package/dist/esm/runtime/token/file_cache/file_bearer.d.ts +4 -1
  134. package/dist/esm/runtime/token/file_cache/file_bearer.d.ts.map +1 -1
  135. package/dist/esm/runtime/token/file_cache/file_bearer.js +25 -4
  136. package/dist/esm/runtime/token/file_cache/file_bearer.js.map +1 -1
  137. package/dist/esm/runtime/token/file_cache/renewable_bearer.d.ts +5 -2
  138. package/dist/esm/runtime/token/file_cache/renewable_bearer.d.ts.map +1 -1
  139. package/dist/esm/runtime/token/file_cache/renewable_bearer.js +47 -7
  140. package/dist/esm/runtime/token/file_cache/renewable_bearer.js.map +1 -1
  141. package/dist/esm/runtime/token/renewable.d.ts +8 -3
  142. package/dist/esm/runtime/token/renewable.d.ts.map +1 -1
  143. package/dist/esm/runtime/token/renewable.js +101 -54
  144. package/dist/esm/runtime/token/renewable.js.map +1 -1
  145. package/dist/esm/runtime/token/service_account.d.ts +7 -3
  146. package/dist/esm/runtime/token/service_account.d.ts.map +1 -1
  147. package/dist/esm/runtime/token/service_account.js +19 -7
  148. package/dist/esm/runtime/token/service_account.js.map +1 -1
  149. package/dist/esm/runtime/token.d.ts +2 -1
  150. package/dist/esm/runtime/token.d.ts.map +1 -1
  151. package/dist/esm/runtime/token.js +8 -4
  152. package/dist/esm/runtime/token.js.map +1 -1
  153. package/dist/esm/runtime/util/golang_parsers.d.ts +7 -0
  154. package/dist/esm/runtime/util/golang_parsers.d.ts.map +1 -0
  155. package/dist/esm/runtime/util/golang_parsers.js +76 -0
  156. package/dist/esm/runtime/util/golang_parsers.js.map +1 -0
  157. package/dist/esm/sdk.d.ts +15 -4
  158. package/dist/esm/sdk.d.ts.map +1 -1
  159. package/dist/esm/sdk.js +80 -51
  160. package/dist/esm/sdk.js.map +1 -1
  161. package/dist/esm/version.d.ts +1 -1
  162. package/dist/esm/version.d.ts.map +1 -1
  163. package/dist/esm/version.js +1 -1
  164. package/dist/esm/version.js.map +1 -1
  165. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"exchangeable.d.ts","sourceRoot":"","sources":["../../../../src/runtime/token/exchangeable.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,oBAAoB,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAS,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAe,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE7E,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO;CAI3C;AAED,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,SAAS,EAAE,MAAM;CAI9B;AAiGD,qBAAa,kBAAmB,SAAQ,MAAM;IAc5C,CAAC,MAAM,CAAC,QAAI,MAAM;IAThB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAE1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IAP1B,SAAgB,KAAK,mCAAmC;IACxD,OAAO,CAAC,GAAG,CAAmD;gBAG3C,SAAS,EAAE,cAAc,EAC1C,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,EAC/B,UAAU,GAAE,MAAU,EACtB,MAAM,CAAC,EAAE,MAAM,YAAA;IASlC,CAAC,UAAU,CAAC,IAAI,OAAO;IAQvB,MAAM,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,IAAI;IAmB9D,QAAQ,IAAI,QAAQ;CAIrB;AAED,MAAM,WAAW,cAAc;IAC7B,uBAAuB,IAAI,oBAAoB,CAAC;CACjD"}
1
+ {"version":3,"file":"exchangeable.d.ts","sourceRoot":"","sources":["../../../../src/runtime/token/exchangeable.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,oBAAoB,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,KAAK,gBAAgB,EAOtB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAS,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAe,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGjD,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO;CAI3C;AAED,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,SAAS,EAAE,MAAM;CAI9B;AA0GD,qBAAa,kBAAmB,SAAQ,MAAM;IAqB5C,CAAC,MAAM,CAAC,QAAI,MAAM;IAfhB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAE1B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IAR1B,SAAgB,KAAK,mCAAmC;IACxD,OAAO,CAAC,GAAG,CAAmD;IAC9D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;gBAG3B,SAAS,EAAE,cAAc,EAC1C,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,EAC/B,UAAU,GAAE,MAAU,EACtB,MAAM,CAAC,EAAE,MAAM,YAAA,EAChC,OAAO,CAAC,EAAE,gBAAgB;IAO5B,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAO3C,CAAC,UAAU,CAAC,IAAI,OAAO;IAQvB,MAAM,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,IAAI;IAmB9D,QAAQ,IAAI,QAAQ;CAUrB;AAED,MAAM,WAAW,cAAc;IAC7B,uBAAuB,IAAI,oBAAoB,CAAC;CACjD"}
@@ -1,6 +1,7 @@
1
1
  import { inspect } from 'util';
2
2
  import { Metadata as GrpcMetadata } from '@grpc/grpc-js';
3
3
  import { TokenExchangeService as ExchangeSvc, } from '../../api/nebius/iam/v1/index.js';
4
+ import { authMetricsRecorder, METRIC_RESULT_ERROR, METRIC_RESULT_SUCCESS, metricDurationMs, metricStart, } from '../metrics.js';
4
5
  import { Bearer, Receiver, Token } from '../token.js';
5
6
  import { TokenSanitizer } from '../token_sanitizer.js';
6
7
  import { custom, customJson, inspectJson } from '../util/logging.js';
@@ -21,14 +22,16 @@ class ExchangeableReceiver extends Receiver {
21
22
  svcOrPromise;
22
23
  defaultMaxRetries;
23
24
  logger;
25
+ metrics;
24
26
  $type = 'nebius.sdk.ExchangeableReceiver';
25
27
  trial = 0;
26
- constructor(requester, svcOrPromise, defaultMaxRetries = 2, logger) {
28
+ constructor(requester, svcOrPromise, defaultMaxRetries = 2, logger, metrics = authMetricsRecorder(undefined, 'token-exchange')) {
27
29
  super();
28
30
  this.requester = requester;
29
31
  this.svcOrPromise = svcOrPromise;
30
32
  this.defaultMaxRetries = defaultMaxRetries;
31
33
  this.logger = logger;
34
+ this.metrics = metrics;
32
35
  this.logger =
33
36
  this.logger?.withFields({ trial: this.trial, defaultMaxRetries: this.defaultMaxRetries }) ??
34
37
  undefined;
@@ -49,41 +52,51 @@ class ExchangeableReceiver extends Receiver {
49
52
  }
50
53
  async _fetch(timeoutMs, _options) {
51
54
  this.trial += 1;
52
- const req = this.requester.getExchangeTokenRequest();
55
+ const start = metricStart();
53
56
  const now = Date.now();
54
57
  this.logger = this.logger?.withFields({ trial: this.trial, start: now }) ?? undefined;
55
- const md = new GrpcMetadata();
56
- // Disable SDK-side authorization for this call
57
- const options = {
58
- authorizationDisable: true,
59
- };
60
- if (typeof timeoutMs === 'number' && Number.isFinite(timeoutMs)) {
61
- this.logger = this.logger?.withFields({ timeoutMs }) ?? undefined;
62
- this.logger?.trace('setting deadline for exchange call');
63
- options.deadline = new Date(now + Math.max(0, timeoutMs));
64
- }
65
- this.logger?.trace('fetching service client');
66
- const svc = await this.getSvc();
67
- this.logger?.trace('making exchange call');
68
- const res = await svc.exchange(req, md, options).result;
69
- if (!res || typeof res !== 'object') {
70
- throw new UnsupportedResponseError('CreateTokenResponse', res);
58
+ try {
59
+ const req = this.requester.getExchangeTokenRequest();
60
+ const md = new GrpcMetadata();
61
+ // Disable SDK-side authorization for this call
62
+ const options = {
63
+ authorizationDisable: true,
64
+ };
65
+ if (typeof timeoutMs === 'number' && Number.isFinite(timeoutMs)) {
66
+ this.logger = this.logger?.withFields({ timeoutMs }) ?? undefined;
67
+ this.logger?.trace('setting deadline for exchange call');
68
+ options.deadline = new Date(now + Math.max(0, timeoutMs));
69
+ }
70
+ this.logger?.trace('fetching service client');
71
+ const svc = await this.getSvc();
72
+ this.logger?.trace('making exchange call');
73
+ const res = await svc.exchange(req, md, options).result;
74
+ if (!res || typeof res !== 'object') {
75
+ throw new UnsupportedResponseError('CreateTokenResponse', res);
76
+ }
77
+ if (res.tokenType !== 'Bearer') {
78
+ throw new UnsupportedTokenTypeError(res.tokenType ?? String(res.tokenType));
79
+ }
80
+ const expSec = typeof res.expiresIn === 'object' &&
81
+ res.expiresIn !== null &&
82
+ typeof res.expiresIn.toString === 'function'
83
+ ? Number(res.expiresIn.toString())
84
+ : Number(res.expiresIn ?? 0);
85
+ this.logger?.debug('token fetched', {
86
+ expires_in: res.expiresIn,
87
+ expiresInSec: expSec,
88
+ access_token: TokenSanitizer.accessTokenSanitizer().sanitize(res.accessToken),
89
+ });
90
+ const expiration = isFinite(expSec) && expSec > 0 ? new Date(now + expSec * 1000) : undefined;
91
+ const token = new Token(res.accessToken, expiration);
92
+ this.metrics.tokenAcquire(METRIC_RESULT_SUCCESS, metricDurationMs(start), this.trial);
93
+ this.metrics.tokenLifetime(token);
94
+ return token;
71
95
  }
72
- if (res.tokenType !== 'Bearer') {
73
- throw new UnsupportedTokenTypeError(res.tokenType ?? String(res.tokenType));
96
+ catch (err) {
97
+ this.metrics.tokenAcquire(METRIC_RESULT_ERROR, metricDurationMs(start), this.trial);
98
+ throw err;
74
99
  }
75
- const expSec = typeof res.expiresIn === 'object' &&
76
- res.expiresIn !== null &&
77
- typeof res.expiresIn.toString === 'function'
78
- ? Number(res.expiresIn.toString())
79
- : Number(res.expiresIn ?? 0);
80
- this.logger?.debug('token fetched', {
81
- expires_in: res.expiresIn,
82
- expiresInSec: expSec,
83
- access_token: TokenSanitizer.accessTokenSanitizer().sanitize(res.accessToken),
84
- });
85
- const expiration = isFinite(expSec) && expSec > 0 ? new Date(now + expSec * 1000) : undefined;
86
- return new Token(res.accessToken, expiration);
87
100
  }
88
101
  canRetry(_err, options) {
89
102
  this.logger?.trace('canRetry check', { options });
@@ -102,13 +115,18 @@ export class ExchangeableBearer extends Bearer {
102
115
  logger;
103
116
  $type = 'nebius.sdk.ExchangeableBearer';
104
117
  svc = null;
105
- constructor(requester, sdk, maxRetries = 2, logger) {
118
+ metrics;
119
+ constructor(requester, sdk, maxRetries = 2, logger, metrics) {
106
120
  super();
107
121
  this.requester = requester;
108
122
  this.maxRetries = maxRetries;
109
123
  this.logger = logger;
124
+ this.metrics = authMetricsRecorder(metrics, 'token-exchange');
110
125
  this.setSDK(sdk);
111
126
  }
127
+ setMetrics(metrics) {
128
+ this.metrics.setMetrics(metrics);
129
+ }
112
130
  [custom]() {
113
131
  return `${this.$type}(requester=${inspect(this.requester)})`;
114
132
  }
@@ -139,7 +157,7 @@ export class ExchangeableBearer extends Bearer {
139
157
  receiver() {
140
158
  if (!this.svc)
141
159
  throw new Error('SDK is not set for the bearer.');
142
- return new ExchangeableReceiver(this.requester, this.svc, this.maxRetries, this.logger);
160
+ return new ExchangeableReceiver(this.requester, this.svc, this.maxRetries, this.logger, this.metrics);
143
161
  }
144
162
  }
145
163
  //# sourceMappingURL=exchangeable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exchangeable.js","sourceRoot":"","sources":["../../../../src/runtime/token/exchangeable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exchangeable.js","sourceRoot":"","sources":["../../../../src/runtime/token/exchangeable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAoB,QAAQ,IAAI,YAAY,EAAiB,MAAM,eAAe,CAAC;AAE1F,OAAO,EACL,oBAAoB,IAAI,WAAW,GAEpC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAEL,mBAAmB,EAEnB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAChB,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAU,MAAM,oBAAoB,CAAC;AAK7E,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,YAAY,QAAgB,EAAE,GAAY;QACxC,KAAK,CAAC,2CAA2C,QAAQ,cAAc,OAAO,GAAG,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IAClD,YAAY,SAAiB;QAC3B,KAAK,CAAC,yDAAyD,SAAS,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF;AAED,MAAM,oBAAqB,SAAQ,QAAQ;IAI/B;IACA;IACA;IACA;IACA;IAPM,KAAK,GAAG,iCAAiC,CAAC;IAClD,KAAK,GAAG,CAAC,CAAC;IAClB,YACU,SAAyB,EACzB,YAAgD,EAChD,oBAA4B,CAAC,EAC7B,MAAe,EACf,UAA+B,mBAAmB,CAAC,SAAS,EAAE,gBAAgB,CAAC;QAEvF,KAAK,EAAE,CAAC;QANA,cAAS,GAAT,SAAS,CAAgB;QACzB,iBAAY,GAAZ,YAAY,CAAoC;QAChD,sBAAiB,GAAjB,iBAAiB,CAAY;QAC7B,WAAM,GAAN,MAAM,CAAS;QACf,YAAO,GAAP,OAAO,CAAwE;QAGvF,IAAI,CAAC,MAAM;YACT,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzF,SAAS,CAAC;IACd,CAAC;IAED,CAAC,MAAM,CAAC;QACN,OAAO,GAAG,IAAI,CAAC,KAAK,cAAc,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,IAAI,CAAC,KAAK,GAAG,CAAC;IACpF,CAAC;IACD,CAAC,UAAU,CAAC;QACV,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;YACtC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;SAC1C,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,MAAM;QAClB,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC;IACjC,CAAC;IAES,KAAK,CAAC,MAAM,CACpB,SAAkB,EAClB,QAA2C;QAE3C,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAChB,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,SAAS,CAAC;QACtF,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,uBAAuB,EAAE,CAAC;YACrD,MAAM,EAAE,GAAa,IAAI,YAAY,EAAE,CAAC;YAExC,+CAA+C;YAC/C,MAAM,OAAO,GAA6D;gBACxE,oBAAoB,EAAE,IAAI;aAC3B,CAAC;YAEF,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC,IAAI,SAAS,CAAC;gBAClE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBACzD,OAAO,CAAC,QAAQ,GAAG,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;YAC5D,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC9C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC3C,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC;YAExD,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACpC,MAAM,IAAI,wBAAwB,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;YACjE,CAAC;YAED,IAAI,GAAG,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,IAAI,yBAAyB,CAAC,GAAG,CAAC,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9E,CAAC;YAED,MAAM,MAAM,GACV,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;gBACjC,GAAG,CAAC,SAAS,KAAK,IAAI;gBACtB,OAAO,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,UAAU;gBAC1C,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;gBAClC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;YAEjC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,eAAe,EAAE;gBAClC,UAAU,EAAE,GAAG,CAAC,SAAS;gBACzB,YAAY,EAAE,MAAM;gBACpB,YAAY,EAAE,cAAc,CAAC,oBAAoB,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC;aAC9E,CAAC,CAAC;YAEH,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9F,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACrD,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACtF,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAClC,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,mBAAmB,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;YACpF,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,IAAa,EAAE,OAA0C;QAChE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,IAAI,CAAC,iBAAiB,CAAC;QACjE,IAAI,IAAI,CAAC,KAAK,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,yCAAyC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;YAC9E,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,kBAAkB,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,MAAM;IAMzB;IAEA;IACA;IARH,KAAK,GAAG,+BAA+B,CAAC;IAChD,GAAG,GAA8C,IAAI,CAAC;IAC7C,OAAO,CAAsB;IAE9C,YACmB,SAAyB,EAC1C,GAAgD,EAC/B,aAAqB,CAAC,EACtB,MAAe,EAChC,OAA0B;QAE1B,KAAK,EAAE,CAAC;QANS,cAAS,GAAT,SAAS,CAAgB;QAEzB,eAAU,GAAV,UAAU,CAAY;QACtB,WAAM,GAAN,MAAM,CAAS;QAIhC,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,UAAU,CAAC,OAAyB;QAClC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,CAAC,MAAM,CAAC;QACN,OAAO,GAAG,IAAI,CAAC,KAAK,cAAc,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;IAC/D,CAAC;IACD,CAAC,UAAU,CAAC;QACV,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;YACtC,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,GAAgD;QACrD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;YAChB,OAAO;QACT,CAAC;QACD,IACE,OAAO,GAAG,KAAK,QAAQ;YACvB,GAAG,KAAK,IAAI;YACZ,MAAM,IAAI,GAAG;YACb,OAAQ,GAA6B,CAAC,IAAI,KAAK,UAAU,EACzD,CAAC;YACD,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAClE,IAAI,CAAC,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,WAAW,CAAC,MAAO,GAA6B,CAAC,CAAC,EAAE,CAAC;QACnF,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAC/C,IAAI,CAAC,GAAG,GAAG,IAAI,WAAW,CAAC,GAAmB,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACjE,OAAO,IAAI,oBAAoB,CAC7B,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,GAAG,EACR,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CACb,CAAC;IACJ,CAAC;CACF"}
@@ -1,13 +1,15 @@
1
- import type { SDKInterface } from '../../sdk.js';
2
- import type { FederatedCredentialsReader } from '../service_account/federated_credentials.js';
3
- import { FederatedCredentialsTokenRequester } from '../service_account/federated_credentials.js';
1
+ import { type AuthMetricsInput } from '../metrics.js';
2
+ import { type FederatedCredentialsReader, FederatedCredentialsTokenRequester } from '../service_account/federated_credentials.js';
4
3
  import { Bearer, Receiver } from '../token.js';
5
4
  import { custom, customJson, Logger } from '../util/logging.js';
5
+ import type { SDKInterface } from '../../sdk.js';
6
6
  export declare class FederatedCredentialsBearer extends Bearer {
7
7
  [custom]: () => string;
8
8
  readonly $type = "nebius.sdk.FederatedCredentialsBearer";
9
9
  private _exchangeable;
10
+ private _renewable;
10
11
  private _source;
12
+ private readonly metrics;
11
13
  constructor(federatedCredentials: FederatedCredentialsTokenRequester | FederatedCredentialsReader | string, opts?: {
12
14
  sdk?: SDKInterface | Promise<SDKInterface> | null;
13
15
  maxRetries?: number;
@@ -17,10 +19,12 @@ export declare class FederatedCredentialsBearer extends Bearer {
17
19
  retryTimeoutExponent?: number;
18
20
  refreshRequestTimeoutMs?: number;
19
21
  serviceAccountId?: string | null;
22
+ metrics?: AuthMetricsInput;
20
23
  logger?: Logger;
21
24
  });
22
25
  [customJson](): unknown;
23
26
  setSDK(sdk: SDKInterface | Promise<SDKInterface> | null): void;
27
+ setMetrics(metrics: AuthMetricsInput): void;
24
28
  get wrapped(): Bearer | undefined;
25
29
  receiver(): Receiver;
26
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"federated_credentials.d.ts","sourceRoot":"","sources":["../../../../src/runtime/token/federated_credentials.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6CAA6C,CAAC;AAC9F,OAAO,EACL,kCAAkC,EAEnC,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,MAAM,EAAe,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAe,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAK7E,qBAAa,0BAA2B,SAAQ,MAAM;IAwFpD,CAAC,MAAM,CAAC,QAAI,MAAM;IAvFlB,SAAgB,KAAK,2CAA2C;IAChE,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,OAAO,CAAS;gBAGtB,oBAAoB,EAAE,kCAAkC,GAAG,0BAA0B,GAAG,MAAM,EAC9F,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;QAClD,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACjC,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;IA0EH,CAAC,UAAU,CAAC,IAAI,OAAO;IAOvB,MAAM,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,IAAI;IAI9D,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAEhC;IAED,QAAQ,IAAI,QAAQ;CAGrB"}
1
+ {"version":3,"file":"federated_credentials.d.ts","sourceRoot":"","sources":["../../../../src/runtime/token/federated_credentials.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,0BAA0B,EAC/B,kCAAkC,EAEnC,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,MAAM,EAAe,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAe,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAI7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,qBAAa,0BAA2B,SAAQ,MAAM;IA+FpD,CAAC,MAAM,CAAC,QAAI,MAAM;IA9FlB,SAAgB,KAAK,2CAA2C;IAChE,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;gBAG5C,oBAAoB,EAAE,kCAAkC,GAAG,0BAA0B,GAAG,MAAM,EAC9F,IAAI,CAAC,EAAE;QACL,GAAG,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;QAClD,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,uBAAuB,CAAC,EAAE,MAAM,CAAC;QACjC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACjC,OAAO,CAAC,EAAE,gBAAgB,CAAC;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;IA8EH,CAAC,UAAU,CAAC,IAAI,OAAO;IAOvB,MAAM,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,IAAI;IAI9D,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAM3C,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAEhC;IAED,QAAQ,IAAI,QAAQ;CAGrB"}
@@ -1,4 +1,5 @@
1
1
  import { inspect } from 'util';
2
+ import { authMetricsRecorder, } from '../metrics.js';
2
3
  import { FederatedCredentialsTokenRequester, FileFederatedCredentials, } from '../service_account/federated_credentials.js';
3
4
  import { Bearer, NamedBearer } from '../token.js';
4
5
  import { custom, customJson, inspectJson } from '../util/logging.js';
@@ -7,7 +8,9 @@ import { RenewableBearer } from './renewable.js';
7
8
  export class FederatedCredentialsBearer extends Bearer {
8
9
  $type = 'nebius.sdk.FederatedCredentialsBearer';
9
10
  _exchangeable;
11
+ _renewable;
10
12
  _source;
13
+ metrics;
11
14
  constructor(federatedCredentials, opts) {
12
15
  super();
13
16
  let fc = null;
@@ -30,17 +33,20 @@ export class FederatedCredentialsBearer extends Bearer {
30
33
  throw new TypeError(`federatedCredentials must be FederatedCredentialsTokenRequester, FederatedCredentialsReader or string, got ${typeof federatedCredentials}`);
31
34
  }
32
35
  const maxRetries = opts?.maxRetries ?? 2;
33
- this._exchangeable = new ExchangeableBearer(fc, opts?.sdk ?? null, maxRetries, opts?.logger?.child('exchangeable'));
34
- const renewable = new RenewableBearer(this._exchangeable, {
36
+ this.metrics = authMetricsRecorder(opts?.metrics, 'federated-credentials');
37
+ this._exchangeable = new ExchangeableBearer(fc, opts?.sdk ?? null, maxRetries, opts?.logger?.child('exchangeable'), this.metrics);
38
+ this._renewable = new RenewableBearer(this._exchangeable, {
35
39
  maxRetries,
36
40
  lifetimeSafeFraction: opts?.lifetimeSafeFraction,
37
41
  initialRetryTimeoutMs: opts?.initialRetryTimeoutMs,
38
42
  maxRetryTimeoutMs: opts?.maxRetryTimeoutMs,
39
43
  retryTimeoutExponent: opts?.retryTimeoutExponent,
40
44
  refreshRequestTimeoutMs: opts?.refreshRequestTimeoutMs,
45
+ metrics: this.metrics,
46
+ provider: 'federated-credentials',
41
47
  logger: opts?.logger?.child('renewable'),
42
48
  });
43
- this._source = renewable;
49
+ this._source = this._renewable;
44
50
  if (fc instanceof FederatedCredentialsTokenRequester &&
45
51
  fc.credentials instanceof FileFederatedCredentials) {
46
52
  opts?.logger?.debug('wrapping with NamedBearer as the credentials are file-based', {
@@ -62,6 +68,11 @@ export class FederatedCredentialsBearer extends Bearer {
62
68
  setSDK(sdk) {
63
69
  this._exchangeable.setSDK(sdk);
64
70
  }
71
+ setMetrics(metrics) {
72
+ this.metrics.setMetrics(metrics);
73
+ this._exchangeable.setMetrics(this.metrics);
74
+ this._renewable.setMetrics(this.metrics);
75
+ }
65
76
  get wrapped() {
66
77
  return this._source;
67
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"federated_credentials.js","sourceRoot":"","sources":["../../../../src/runtime/token/federated_credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAI/B,OAAO,EACL,kCAAkC,EAClC,wBAAwB,GACzB,MAAM,6CAA6C,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAY,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAU,MAAM,oBAAoB,CAAC;AAE7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,OAAO,0BAA2B,SAAQ,MAAM;IACpC,KAAK,GAAG,uCAAuC,CAAC;IACxD,aAAa,CAAqB;IAClC,OAAO,CAAS;IAExB,YACE,oBAA8F,EAC9F,IAUC;QAED,KAAK,EAAE,CAAC;QAER,IAAI,EAAE,GAA8C,IAAI,CAAC;QAEzD,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE,CAAC;YAC7C,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACrE,oBAAoB,GAAG,IAAI,wBAAwB,CAAC,oBAAoB,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,OAAQ,oBAAmD,EAAE,WAAW,KAAK,UAAU,EAAE,CAAC;YAC5F,IAAI,OAAO,IAAI,EAAE,gBAAgB,KAAK,QAAQ,EAAE,CAAC;gBAC/C,MAAM,IAAI,SAAS,CACjB,uFAAuF,CACxF,CAAC;YACJ,CAAC;YACD,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC/E,EAAE,GAAG,IAAI,kCAAkC,CACzC,IAAI,CAAC,gBAAgB,EACrB,oBAAkD,EAClD,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,iCAAiC,CAAC,CACvD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,EAAE,IAAI,oBAAoB,YAAY,kCAAkC,EAAE,CAAC;YAC9E,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACvE,EAAE,GAAG,oBAA0D,CAAC;QAClE,CAAC;QAED,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,SAAS,CACjB,8GAA8G,OAAO,oBAAoB,EAAE,CAC5I,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,CAAC,CAAC;QAEzC,IAAI,CAAC,aAAa,GAAG,IAAI,kBAAkB,CACzC,EAAE,EACF,IAAI,EAAE,GAAG,IAAI,IAAI,EACjB,UAAU,EACV,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CACpC,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,aAAa,EAAE;YACxD,UAAU;YACV,oBAAoB,EAAE,IAAI,EAAE,oBAAoB;YAChD,qBAAqB,EAAE,IAAI,EAAE,qBAAqB;YAClD,iBAAiB,EAAE,IAAI,EAAE,iBAAiB;YAC1C,oBAAoB,EAAE,IAAI,EAAE,oBAAoB;YAChD,uBAAuB,EAAE,IAAI,EAAE,uBAAuB;YACtD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC;SACzC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;QAEzB,IACE,EAAE,YAAY,kCAAkC;YAChD,EAAE,CAAC,WAAW,YAAY,wBAAwB,EAClD,CAAC;YACD,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,6DAA6D,EAAE;gBACjF,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ;gBACjC,gBAAgB,EAAE,EAAE,CAAC,gBAAgB;aACtC,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,GAAG,IAAI,WAAW,CAC5B,IAAI,CAAC,OAAO,EACZ,yBAAyB,EAAE,CAAC,gBAAgB,IAAI,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,CAC1E,CAAC;QACJ,CAAC;IACH,CAAC;IACD,CAAC,MAAM,CAAC;QACN,OAAO,qCAAqC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;IACvE,CAAC;IACD,CAAC,UAAU,CAAC;QACV,OAAO;YACL,IAAI,EAAE,4BAA4B;YAClC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;SAClC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,GAAgD;QACrD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"federated_credentials.js","sourceRoot":"","sources":["../../../../src/runtime/token/federated_credentials.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,11 @@
1
+ import { type AuthMetricsInput } from '../metrics.js';
1
2
  import { Bearer, Receiver } from '../token.js';
2
3
  import { custom, customJson, Logger } from '../util/logging.js';
3
4
  export declare class FederationAccountBearer extends Bearer {
4
5
  [custom]: () => string;
5
6
  readonly $type = "nebius.sdk.FederationAccountBearer";
6
7
  private _source;
8
+ private readonly metrics;
7
9
  constructor(profileName: string, clientId: string, federationEndpoint: string, federationId: string, opts?: {
8
10
  writer?: (s: string) => void;
9
11
  logger?: Logger;
@@ -19,9 +21,11 @@ export declare class FederationAccountBearer extends Bearer {
19
21
  fileCacheThrottleMs?: number;
20
22
  cacheFilePath?: string;
21
23
  ca?: Buffer | string | string[];
24
+ metrics?: AuthMetricsInput;
22
25
  });
23
26
  [customJson](): unknown;
24
27
  get wrapped(): Bearer | undefined;
28
+ setMetrics(metrics: AuthMetricsInput): void;
25
29
  receiver(): Receiver;
26
30
  }
27
31
  //# sourceMappingURL=federation_account.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"federation_account.d.ts","sourceRoot":"","sources":["../../../../src/runtime/token/federation_account.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAe,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAK7E,qBAAa,uBAAwB,SAAQ,MAAM;IAuDjD,CAAC,MAAM,CAAC,QAAI,MAAM;IAtDlB,SAAgB,KAAK,wCAAwC;IAC7D,OAAO,CAAC,OAAO,CAAuB;gBAGpC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAC1B,YAAY,EAAE,MAAM,EACpB,IAAI,CAAC,EAAE;QACL,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;QAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;KACjC;IAkCH,CAAC,UAAU,CAAC,IAAI,OAAO;IAOvB,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAEhC;IAED,QAAQ,IAAI,QAAQ;CAGrB"}
1
+ {"version":3,"file":"federation_account.d.ts","sourceRoot":"","sources":["../../../../src/runtime/token/federation_account.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAe,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAI7E,qBAAa,uBAAwB,SAAQ,MAAM;IA6DjD,CAAC,MAAM,CAAC,QAAI,MAAM;IA5DlB,SAAgB,KAAK,wCAAwC;IAC7D,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;gBAG5C,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAC1B,YAAY,EAAE,MAAM,EACpB,IAAI,CAAC,EAAE;QACL,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;QAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtC,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;QAChC,OAAO,CAAC,EAAE,gBAAgB,CAAC;KAC5B;IAsCH,CAAC,UAAU,CAAC,IAAI,OAAO;IAOvB,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAEhC;IAED,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAK3C,QAAQ,IAAI,QAAQ;CAGrB"}
@@ -1,4 +1,5 @@
1
1
  import { inspect } from 'util';
2
+ import { authMetricsRecorder, } from '../metrics.js';
2
3
  import { Bearer } from '../token.js';
3
4
  import { custom, customJson, inspectJson } from '../util/logging.js';
4
5
  import { FederationBearer as FederationAuthBearer } from './federation_bearer/index.js';
@@ -6,9 +7,11 @@ import { AsyncRenewableBearer } from './file_cache/async_renewable_bearer.js';
6
7
  export class FederationAccountBearer extends Bearer {
7
8
  $type = 'nebius.sdk.FederationAccountBearer';
8
9
  _source;
10
+ metrics;
9
11
  constructor(profileName, clientId, federationEndpoint, federationId, opts) {
10
12
  super();
11
- const auth = new FederationAuthBearer(profileName, clientId, federationEndpoint, federationId, opts?.writer, opts?.noBrowserOpen ?? false, opts?.ca instanceof Buffer ? opts.ca : undefined, opts?.logger?.child('federation_auth'));
13
+ this.metrics = authMetricsRecorder(opts?.metrics, 'federation');
14
+ const auth = new FederationAuthBearer(profileName, clientId, federationEndpoint, federationId, opts?.writer, opts?.noBrowserOpen ?? false, opts?.ca instanceof Buffer ? opts.ca : undefined, opts?.logger?.child('federation_auth'), this.metrics);
12
15
  const renewable = new AsyncRenewableBearer(auth, {
13
16
  maxRetries: opts?.maxRetries ?? 2,
14
17
  initialSafetyMarginMs: opts?.initialSafetyMarginMs ?? 2 * 60 * 60 * 1000,
@@ -20,6 +23,8 @@ export class FederationAccountBearer extends Bearer {
20
23
  refreshRequestTimeoutMs: opts?.timeoutMs ?? 5 * 60 * 1000,
21
24
  fileCacheThrottleMs: opts?.fileCacheThrottleMs ?? 5 * 60 * 1000,
22
25
  cacheFilePath: opts?.cacheFilePath,
26
+ metrics: this.metrics,
27
+ provider: 'federation',
23
28
  logger: opts?.logger?.child('renewable'),
24
29
  });
25
30
  this._source = renewable;
@@ -36,6 +41,10 @@ export class FederationAccountBearer extends Bearer {
36
41
  get wrapped() {
37
42
  return this._source;
38
43
  }
44
+ setMetrics(metrics) {
45
+ this.metrics.setMetrics(metrics);
46
+ this._source.setMetrics(this.metrics);
47
+ }
39
48
  receiver() {
40
49
  return this._source.receiver();
41
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"federation_account.js","sourceRoot":"","sources":["../../../../src/runtime/token/federation_account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAY,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAU,MAAM,oBAAoB,CAAC;AAE7E,OAAO,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAE9E,MAAM,OAAO,uBAAwB,SAAQ,MAAM;IACjC,KAAK,GAAG,oCAAoC,CAAC;IACrD,OAAO,CAAuB;IAEtC,YACE,WAAmB,EACnB,QAAgB,EAChB,kBAA0B,EAC1B,YAAoB,EACpB,IAeC;QAED,KAAK,EAAE,CAAC;QAER,MAAM,IAAI,GAAG,IAAI,oBAAoB,CACnC,WAAW,EACX,QAAQ,EACR,kBAAkB,EAClB,YAAY,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,aAAa,IAAI,KAAK,EAC5B,IAAI,EAAE,EAAE,YAAY,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAChD,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,iBAAiB,CAAC,CACvC,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC,IAAI,EAAE;YAC/C,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,CAAC;YACjC,qBAAqB,EAAE,IAAI,EAAE,qBAAqB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;YACxE,mBAAmB,EAAE,IAAI,EAAE,mBAAmB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;YACpE,oBAAoB,EAAE,IAAI,EAAE,oBAAoB,IAAI,GAAG;YACvD,qBAAqB,EAAE,IAAI,EAAE,qBAAqB,IAAI,KAAK;YAC3D,iBAAiB,EAAE,IAAI,EAAE,iBAAiB,IAAI,MAAM;YACpD,oBAAoB,EAAE,IAAI,EAAE,oBAAoB,IAAI,GAAG;YACvD,uBAAuB,EAAE,IAAI,EAAE,SAAS,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI;YACzD,mBAAmB,EAAE,IAAI,EAAE,mBAAmB,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI;YAC/D,aAAa,EAAE,IAAI,EAAE,aAAa;YAClC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC;SACzC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3B,CAAC;IACD,CAAC,MAAM,CAAC;QACN,OAAO,kCAAkC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;IACpE,CAAC;IACD,CAAC,UAAU,CAAC;QACV,OAAO;YACL,IAAI,EAAE,yBAAyB;YAC/B,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;SAClC,CAAC;IACJ,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;CACF"}
1
+ {"version":3,"file":"federation_account.js","sourceRoot":"","sources":["../../../../src/runtime/token/federation_account.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type AuthMetricsInput } from '../../metrics.js';
1
2
  import { Bearer, Receiver } from '../../token.js';
2
3
  import { custom, customJson, Logger } from '../../util/logging.js';
3
4
  export declare class FederationBearer extends Bearer {
@@ -11,7 +12,9 @@ export declare class FederationBearer extends Bearer {
11
12
  private readonly ca?;
12
13
  readonly $type = "nebius.sdk.FederationBearer";
13
14
  private readonly logger?;
14
- constructor(profileName: string, clientId: string, federationEndpoint: string, federationId: string, writer?: ((s: string) => void) | undefined, noBrowserOpen?: boolean, ca?: Buffer | undefined, logger?: Logger);
15
+ private readonly metrics;
16
+ constructor(profileName: string, clientId: string, federationEndpoint: string, federationId: string, writer?: ((s: string) => void) | undefined, noBrowserOpen?: boolean, ca?: Buffer | undefined, logger?: Logger, metrics?: AuthMetricsInput);
17
+ setMetrics(metrics: AuthMetricsInput): void;
15
18
  [customJson](): unknown;
16
19
  get name(): string | undefined;
17
20
  receiver(): Receiver;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/token/federation_bearer/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAS,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAqEnE,qBAAa,gBAAiB,SAAQ,MAAM;IAsB1C,CAAC,MAAM,CAAC,QAAI,MAAM;IAlBhB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;IATtB,SAAgB,KAAK,iCAAiC;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;gBAEd,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAC1B,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,aAAA,EAC5B,aAAa,GAAE,OAAe,EAC9B,EAAE,CAAC,EAAE,MAAM,YAAA,EAC5B,MAAM,CAAC,EAAE,MAAM;IAcjB,CAAC,UAAU,CAAC,IAAI,OAAO;IAWvB,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED,QAAQ,IAAI,QAAQ;CAYrB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/token/federation_bearer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EAOtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAS,MAAM,gBAAgB,CAAC;AAEzD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AA+EnE,qBAAa,gBAAiB,SAAQ,MAAM;IA6B1C,CAAC,MAAM,CAAC,QAAI,MAAM;IAxBhB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;IAVtB,SAAgB,KAAK,iCAAiC;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;gBAE3B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAC1B,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,aAAA,EAC5B,aAAa,GAAE,OAAe,EAC9B,EAAE,CAAC,EAAE,MAAM,YAAA,EAC5B,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,gBAAgB;IAa5B,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAM3C,CAAC,UAAU,CAAC,IAAI,OAAO;IAWvB,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED,QAAQ,IAAI,QAAQ;CAarB"}
@@ -1,3 +1,4 @@
1
+ import { authMetricsRecorder, METRIC_RESULT_ERROR, METRIC_RESULT_SUCCESS, metricDurationMs, metricStart, } from '../../metrics.js';
1
2
  import { Bearer, Receiver, Token } from '../../token.js';
2
3
  import { TokenSanitizer } from '../../token_sanitizer.js';
3
4
  import { custom, customJson } from '../../util/logging.js';
@@ -10,8 +11,9 @@ class FederationReceiver extends Receiver {
10
11
  noBrowserOpen;
11
12
  ca;
12
13
  logger;
14
+ metrics;
13
15
  $type = 'nebius.sdk.FederationReceiver';
14
- constructor(clientId, federationEndpoint, federationId, writer, noBrowserOpen = false, ca, logger) {
16
+ constructor(clientId, federationEndpoint, federationId, writer, noBrowserOpen = false, ca, logger, metrics = authMetricsRecorder(undefined, 'federation')) {
15
17
  super();
16
18
  this.clientId = clientId;
17
19
  this.federationEndpoint = federationEndpoint;
@@ -20,6 +22,7 @@ class FederationReceiver extends Receiver {
20
22
  this.noBrowserOpen = noBrowserOpen;
21
23
  this.ca = ca;
22
24
  this.logger = logger;
25
+ this.metrics = metrics;
23
26
  }
24
27
  [custom]() {
25
28
  return `${this.$type}(clientId=${this.clientId}, federationEndpoint=${this.federationEndpoint}, federationId=${this.federationId}, noBrowserOpen=${this.noBrowserOpen})`;
@@ -36,29 +39,38 @@ class FederationReceiver extends Receiver {
36
39
  };
37
40
  }
38
41
  async _fetch(timeoutMs, _options) {
39
- const start = Date.now();
40
- this.logger?.debug('receiver._fetch: start', { timeoutMs, start });
41
- const res = await authorize({
42
- clientId: this.clientId,
43
- federationEndpoint: this.federationEndpoint,
44
- federationId: this.federationId,
45
- writer: this.writer,
46
- noBrowserOpen: this.noBrowserOpen,
47
- timeoutMs: timeoutMs === undefined ? undefined : Math.max(0, timeoutMs - (Date.now() - start)),
48
- ca: this.ca,
49
- logger: this.logger?.child('auth'),
50
- });
51
- this.logger?.trace('receiver._fetch: authorize result', {
52
- expires_in: res?.expires_in,
53
- access_token: TokenSanitizer.accessTokenSanitizer().sanitize(res?.access_token),
54
- });
55
- if (!res || typeof res.access_token !== 'string' || typeof res.expires_in !== 'number') {
56
- throw new Error('invalid token response');
42
+ const start = metricStart();
43
+ const startWallMs = Date.now();
44
+ this.logger?.debug('receiver._fetch: start', { timeoutMs, start: startWallMs });
45
+ try {
46
+ const res = await authorize({
47
+ clientId: this.clientId,
48
+ federationEndpoint: this.federationEndpoint,
49
+ federationId: this.federationId,
50
+ writer: this.writer,
51
+ noBrowserOpen: this.noBrowserOpen,
52
+ timeoutMs: timeoutMs === undefined ? undefined : Math.max(0, timeoutMs - (Date.now() - startWallMs)),
53
+ ca: this.ca,
54
+ logger: this.logger?.child('auth'),
55
+ });
56
+ this.logger?.trace('receiver._fetch: authorize result', {
57
+ expires_in: res?.expires_in,
58
+ access_token: TokenSanitizer.accessTokenSanitizer().sanitize(res?.access_token),
59
+ });
60
+ if (!res || typeof res.access_token !== 'string' || typeof res.expires_in !== 'number') {
61
+ throw new Error('invalid token response');
62
+ }
63
+ const expiration = res.expires_in > 0 ? new Date(Date.now() + res.expires_in * 1000) : undefined;
64
+ const tok = new Token(res.access_token, expiration);
65
+ this.metrics.tokenAcquire(METRIC_RESULT_SUCCESS, metricDurationMs(start), 1);
66
+ this.metrics.tokenLifetime(tok);
67
+ this.logger?.debug('receiver._fetch: received token', { token: tok });
68
+ return tok;
69
+ }
70
+ catch (err) {
71
+ this.metrics.tokenAcquire(METRIC_RESULT_ERROR, metricDurationMs(start), 1);
72
+ throw err;
57
73
  }
58
- const expiration = res.expires_in > 0 ? new Date(Date.now() + res.expires_in * 1000) : undefined;
59
- const tok = new Token(res.access_token, expiration);
60
- this.logger?.debug('receiver._fetch: received token', { token: tok });
61
- return tok;
62
74
  }
63
75
  canRetry(_err, _options) {
64
76
  this.logger?.debug('receiver.canRetry -> false');
@@ -75,7 +87,8 @@ export class FederationBearer extends Bearer {
75
87
  ca;
76
88
  $type = 'nebius.sdk.FederationBearer';
77
89
  logger;
78
- constructor(profileName, clientId, federationEndpoint, federationId, writer, noBrowserOpen = false, ca, logger) {
90
+ metrics;
91
+ constructor(profileName, clientId, federationEndpoint, federationId, writer, noBrowserOpen = false, ca, logger, metrics) {
79
92
  super();
80
93
  this.profileName = profileName;
81
94
  this.clientId = clientId;
@@ -84,6 +97,7 @@ export class FederationBearer extends Bearer {
84
97
  this.writer = writer;
85
98
  this.noBrowserOpen = noBrowserOpen;
86
99
  this.ca = ca;
100
+ this.metrics = authMetricsRecorder(metrics, 'federation');
87
101
  this.logger = logger?.withFields({
88
102
  profile: profileName,
89
103
  federationEndpoint,
@@ -92,6 +106,9 @@ export class FederationBearer extends Bearer {
92
106
  });
93
107
  this.logger?.trace('bearer: created');
94
108
  }
109
+ setMetrics(metrics) {
110
+ this.metrics.setMetrics(metrics);
111
+ }
95
112
  [custom]() {
96
113
  return `${this.$type}(profileName=${this.profileName}, clientId=${this.clientId}, federationEndpoint=${this.federationEndpoint}, federationId=${this.federationId}, noBrowserOpen=${this.noBrowserOpen})`;
97
114
  }
@@ -110,7 +127,7 @@ export class FederationBearer extends Bearer {
110
127
  }
111
128
  receiver() {
112
129
  this.logger?.trace('bearer.receiver');
113
- return new FederationReceiver(this.clientId, this.federationEndpoint, this.federationId, this.writer, this.noBrowserOpen, this.ca, this.logger);
130
+ return new FederationReceiver(this.clientId, this.federationEndpoint, this.federationId, this.writer, this.noBrowserOpen, this.ca, this.logger, this.metrics);
114
131
  }
115
132
  }
116
133
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/runtime/token/federation_bearer/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/runtime/token/federation_bearer/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,15 @@
1
- import { Bearer, Receiver } from '../token.js';
1
+ import { type AuthMetricsInput } from '../metrics.js';
2
+ import { Bearer, Receiver, Token } from '../token.js';
2
3
  import { custom, customJson } from '../util/logging.js';
3
4
  export declare class FileBearer extends Bearer {
4
5
  [custom]: () => string;
5
6
  readonly $type = "nebius.sdk.FileBearer";
6
7
  private readonly filePath;
7
- constructor(filePath: string);
8
+ private readonly metrics;
9
+ constructor(filePath: string, metrics?: AuthMetricsInput);
8
10
  [customJson](): unknown;
9
11
  receiver(): Receiver;
12
+ fetchToken(): Promise<Token>;
13
+ setMetrics(metrics: AuthMetricsInput): void;
10
14
  }
11
15
  //# sourceMappingURL=file.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/runtime/token/file.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAS,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAgCxD,qBAAa,UAAW,SAAQ,MAAM;IAOpC,CAAC,MAAM,CAAC,QAAI,MAAM;IANlB,SAAgB,KAAK,2BAA2B;IAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBACtB,QAAQ,EAAE,MAAM;IAO5B,CAAC,UAAU,CAAC,IAAI,OAAO;IAOvB,QAAQ,IAAI,QAAQ;CAGrB"}
1
+ {"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../../../src/runtime/token/file.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,gBAAgB,EAOtB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAgCxD,qBAAa,UAAW,SAAQ,MAAM;IAUpC,CAAC,MAAM,CAAC,QAAI,MAAM;IATlB,SAAgB,KAAK,2BAA2B;IAChD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;gBAElC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAQxD,CAAC,UAAU,CAAC,IAAI,OAAO;IAOvB,QAAQ,IAAI,QAAQ;IAId,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC;IAkBlC,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;CAG5C"}