@aws-sdk/client-xray 3.876.0 → 3.879.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/dist-cjs/index.js CHANGED
@@ -837,6 +837,7 @@ var se_GetSamplingTargetsCommand = /* @__PURE__ */ __name(async (input, context)
837
837
  let body;
838
838
  body = JSON.stringify(
839
839
  (0, import_smithy_client.take)(input, {
840
+ SamplingBoostStatisticsDocuments: /* @__PURE__ */ __name((_) => se_SamplingBoostStatisticsDocumentList(_, context), "SamplingBoostStatisticsDocuments"),
840
841
  SamplingStatisticsDocuments: /* @__PURE__ */ __name((_) => se_SamplingStatisticsDocumentList(_, context), "SamplingStatisticsDocuments")
841
842
  })
842
843
  );
@@ -1424,6 +1425,7 @@ var de_GetSamplingTargetsCommand = /* @__PURE__ */ __name(async (output, context
1424
1425
  const doc = (0, import_smithy_client.take)(data, {
1425
1426
  LastRuleModification: /* @__PURE__ */ __name((_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseEpochTimestamp)((0, import_smithy_client.expectNumber)(_))), "LastRuleModification"),
1426
1427
  SamplingTargetDocuments: /* @__PURE__ */ __name((_) => de_SamplingTargetDocumentList(_, context), "SamplingTargetDocuments"),
1428
+ UnprocessedBoostStatistics: import_smithy_client._json,
1427
1429
  UnprocessedStatistics: import_smithy_client._json
1428
1430
  });
1429
1431
  Object.assign(contents, doc);
@@ -1890,6 +1892,27 @@ var se_ProbabilisticRuleValueUpdate = /* @__PURE__ */ __name((input, context) =>
1890
1892
  DesiredSamplingPercentage: import_smithy_client.serializeFloat
1891
1893
  });
1892
1894
  }, "se_ProbabilisticRuleValueUpdate");
1895
+ var se_SamplingBoostStatisticsDocument = /* @__PURE__ */ __name((input, context) => {
1896
+ return (0, import_smithy_client.take)(input, {
1897
+ AnomalyCount: [],
1898
+ RuleName: [],
1899
+ SampledAnomalyCount: [],
1900
+ ServiceName: [],
1901
+ Timestamp: /* @__PURE__ */ __name((_) => _.getTime() / 1e3, "Timestamp"),
1902
+ TotalCount: []
1903
+ });
1904
+ }, "se_SamplingBoostStatisticsDocument");
1905
+ var se_SamplingBoostStatisticsDocumentList = /* @__PURE__ */ __name((input, context) => {
1906
+ return input.filter((e) => e != null).map((entry) => {
1907
+ return se_SamplingBoostStatisticsDocument(entry, context);
1908
+ });
1909
+ }, "se_SamplingBoostStatisticsDocumentList");
1910
+ var se_SamplingRateBoost = /* @__PURE__ */ __name((input, context) => {
1911
+ return (0, import_smithy_client.take)(input, {
1912
+ CooldownWindowMinutes: [],
1913
+ MaxRate: import_smithy_client.serializeFloat
1914
+ });
1915
+ }, "se_SamplingRateBoost");
1893
1916
  var se_SamplingRule = /* @__PURE__ */ __name((input, context) => {
1894
1917
  return (0, import_smithy_client.take)(input, {
1895
1918
  Attributes: import_smithy_client._json,
@@ -1901,6 +1924,7 @@ var se_SamplingRule = /* @__PURE__ */ __name((input, context) => {
1901
1924
  ResourceARN: [],
1902
1925
  RuleARN: [],
1903
1926
  RuleName: [],
1927
+ SamplingRateBoost: /* @__PURE__ */ __name((_) => se_SamplingRateBoost(_, context), "SamplingRateBoost"),
1904
1928
  ServiceName: [],
1905
1929
  ServiceType: [],
1906
1930
  URLPath: [],
@@ -1918,6 +1942,7 @@ var se_SamplingRuleUpdate = /* @__PURE__ */ __name((input, context) => {
1918
1942
  ResourceARN: [],
1919
1943
  RuleARN: [],
1920
1944
  RuleName: [],
1945
+ SamplingRateBoost: /* @__PURE__ */ __name((_) => se_SamplingRateBoost(_, context), "SamplingRateBoost"),
1921
1946
  ServiceName: [],
1922
1947
  ServiceType: [],
1923
1948
  URLPath: []
@@ -2174,6 +2199,18 @@ var de_RetrievedTrace = /* @__PURE__ */ __name((output, context) => {
2174
2199
  Spans: import_smithy_client._json
2175
2200
  });
2176
2201
  }, "de_RetrievedTrace");
2202
+ var de_SamplingBoost = /* @__PURE__ */ __name((output, context) => {
2203
+ return (0, import_smithy_client.take)(output, {
2204
+ BoostRate: import_smithy_client.limitedParseDouble,
2205
+ BoostRateTTL: /* @__PURE__ */ __name((_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseEpochTimestamp)((0, import_smithy_client.expectNumber)(_))), "BoostRateTTL")
2206
+ });
2207
+ }, "de_SamplingBoost");
2208
+ var de_SamplingRateBoost = /* @__PURE__ */ __name((output, context) => {
2209
+ return (0, import_smithy_client.take)(output, {
2210
+ CooldownWindowMinutes: import_smithy_client.expectInt32,
2211
+ MaxRate: import_smithy_client.limitedParseDouble
2212
+ });
2213
+ }, "de_SamplingRateBoost");
2177
2214
  var de_SamplingRule = /* @__PURE__ */ __name((output, context) => {
2178
2215
  return (0, import_smithy_client.take)(output, {
2179
2216
  Attributes: import_smithy_client._json,
@@ -2185,6 +2222,7 @@ var de_SamplingRule = /* @__PURE__ */ __name((output, context) => {
2185
2222
  ResourceARN: import_smithy_client.expectString,
2186
2223
  RuleARN: import_smithy_client.expectString,
2187
2224
  RuleName: import_smithy_client.expectString,
2225
+ SamplingRateBoost: /* @__PURE__ */ __name((_) => de_SamplingRateBoost(_, context), "SamplingRateBoost"),
2188
2226
  ServiceName: import_smithy_client.expectString,
2189
2227
  ServiceType: import_smithy_client.expectString,
2190
2228
  URLPath: import_smithy_client.expectString,
@@ -2225,7 +2263,8 @@ var de_SamplingTargetDocument = /* @__PURE__ */ __name((output, context) => {
2225
2263
  Interval: import_smithy_client.expectInt32,
2226
2264
  ReservoirQuota: import_smithy_client.expectInt32,
2227
2265
  ReservoirQuotaTTL: /* @__PURE__ */ __name((_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseEpochTimestamp)((0, import_smithy_client.expectNumber)(_))), "ReservoirQuotaTTL"),
2228
- RuleName: import_smithy_client.expectString
2266
+ RuleName: import_smithy_client.expectString,
2267
+ SamplingBoost: /* @__PURE__ */ __name((_) => de_SamplingBoost(_, context), "SamplingBoost")
2229
2268
  });
2230
2269
  }, "de_SamplingTargetDocument");
2231
2270
  var de_SamplingTargetDocumentList = /* @__PURE__ */ __name((output, context) => {
@@ -261,6 +261,7 @@ export const se_GetSamplingTargetsCommand = async (input, context) => {
261
261
  b.bp("/SamplingTargets");
262
262
  let body;
263
263
  body = JSON.stringify(take(input, {
264
+ SamplingBoostStatisticsDocuments: (_) => se_SamplingBoostStatisticsDocumentList(_, context),
264
265
  SamplingStatisticsDocuments: (_) => se_SamplingStatisticsDocumentList(_, context),
265
266
  }));
266
267
  b.m("POST").h(headers).b(body);
@@ -811,6 +812,7 @@ export const de_GetSamplingTargetsCommand = async (output, context) => {
811
812
  const doc = take(data, {
812
813
  LastRuleModification: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
813
814
  SamplingTargetDocuments: (_) => de_SamplingTargetDocumentList(_, context),
815
+ UnprocessedBoostStatistics: _json,
814
816
  UnprocessedStatistics: _json,
815
817
  });
816
818
  Object.assign(contents, doc);
@@ -1277,6 +1279,29 @@ const se_ProbabilisticRuleValueUpdate = (input, context) => {
1277
1279
  DesiredSamplingPercentage: __serializeFloat,
1278
1280
  });
1279
1281
  };
1282
+ const se_SamplingBoostStatisticsDocument = (input, context) => {
1283
+ return take(input, {
1284
+ AnomalyCount: [],
1285
+ RuleName: [],
1286
+ SampledAnomalyCount: [],
1287
+ ServiceName: [],
1288
+ Timestamp: (_) => _.getTime() / 1_000,
1289
+ TotalCount: [],
1290
+ });
1291
+ };
1292
+ const se_SamplingBoostStatisticsDocumentList = (input, context) => {
1293
+ return input
1294
+ .filter((e) => e != null)
1295
+ .map((entry) => {
1296
+ return se_SamplingBoostStatisticsDocument(entry, context);
1297
+ });
1298
+ };
1299
+ const se_SamplingRateBoost = (input, context) => {
1300
+ return take(input, {
1301
+ CooldownWindowMinutes: [],
1302
+ MaxRate: __serializeFloat,
1303
+ });
1304
+ };
1280
1305
  const se_SamplingRule = (input, context) => {
1281
1306
  return take(input, {
1282
1307
  Attributes: _json,
@@ -1288,6 +1313,7 @@ const se_SamplingRule = (input, context) => {
1288
1313
  ResourceARN: [],
1289
1314
  RuleARN: [],
1290
1315
  RuleName: [],
1316
+ SamplingRateBoost: (_) => se_SamplingRateBoost(_, context),
1291
1317
  ServiceName: [],
1292
1318
  ServiceType: [],
1293
1319
  URLPath: [],
@@ -1305,6 +1331,7 @@ const se_SamplingRuleUpdate = (input, context) => {
1305
1331
  ResourceARN: [],
1306
1332
  RuleARN: [],
1307
1333
  RuleName: [],
1334
+ SamplingRateBoost: (_) => se_SamplingRateBoost(_, context),
1308
1335
  ServiceName: [],
1309
1336
  ServiceType: [],
1310
1337
  URLPath: [],
@@ -1585,6 +1612,18 @@ const de_RetrievedTrace = (output, context) => {
1585
1612
  Spans: _json,
1586
1613
  });
1587
1614
  };
1615
+ const de_SamplingBoost = (output, context) => {
1616
+ return take(output, {
1617
+ BoostRate: __limitedParseDouble,
1618
+ BoostRateTTL: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1619
+ });
1620
+ };
1621
+ const de_SamplingRateBoost = (output, context) => {
1622
+ return take(output, {
1623
+ CooldownWindowMinutes: __expectInt32,
1624
+ MaxRate: __limitedParseDouble,
1625
+ });
1626
+ };
1588
1627
  const de_SamplingRule = (output, context) => {
1589
1628
  return take(output, {
1590
1629
  Attributes: _json,
@@ -1596,6 +1635,7 @@ const de_SamplingRule = (output, context) => {
1596
1635
  ResourceARN: __expectString,
1597
1636
  RuleARN: __expectString,
1598
1637
  RuleName: __expectString,
1638
+ SamplingRateBoost: (_) => de_SamplingRateBoost(_, context),
1599
1639
  ServiceName: __expectString,
1600
1640
  ServiceType: __expectString,
1601
1641
  URLPath: __expectString,
@@ -1641,6 +1681,7 @@ const de_SamplingTargetDocument = (output, context) => {
1641
1681
  ReservoirQuota: __expectInt32,
1642
1682
  ReservoirQuotaTTL: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),
1643
1683
  RuleName: __expectString,
1684
+ SamplingBoost: (_) => de_SamplingBoost(_, context),
1644
1685
  });
1645
1686
  };
1646
1687
  const de_SamplingTargetDocumentList = (output, context) => {
@@ -57,6 +57,10 @@ declare const CreateSamplingRuleCommand_base: {
57
57
  * Attributes: { // AttributeMap
58
58
  * "<keys>": "STRING_VALUE",
59
59
  * },
60
+ * SamplingRateBoost: { // SamplingRateBoost
61
+ * MaxRate: Number("double"), // required
62
+ * CooldownWindowMinutes: Number("int"), // required
63
+ * },
60
64
  * },
61
65
  * Tags: [ // TagList
62
66
  * { // Tag
@@ -85,6 +89,10 @@ declare const CreateSamplingRuleCommand_base: {
85
89
  * // Attributes: { // AttributeMap
86
90
  * // "<keys>": "STRING_VALUE",
87
91
  * // },
92
+ * // SamplingRateBoost: { // SamplingRateBoost
93
+ * // MaxRate: Number("double"), // required
94
+ * // CooldownWindowMinutes: Number("int"), // required
95
+ * // },
88
96
  * // },
89
97
  * // CreatedAt: new Date("TIMESTAMP"),
90
98
  * // ModifiedAt: new Date("TIMESTAMP"),
@@ -58,6 +58,10 @@ declare const DeleteSamplingRuleCommand_base: {
58
58
  * // Attributes: { // AttributeMap
59
59
  * // "<keys>": "STRING_VALUE",
60
60
  * // },
61
+ * // SamplingRateBoost: { // SamplingRateBoost
62
+ * // MaxRate: Number("double"), // required
63
+ * // CooldownWindowMinutes: Number("int"), // required
64
+ * // },
61
65
  * // },
62
66
  * // CreatedAt: new Date("TIMESTAMP"),
63
67
  * // ModifiedAt: new Date("TIMESTAMP"),
@@ -58,6 +58,10 @@ declare const GetSamplingRulesCommand_base: {
58
58
  * // Attributes: { // AttributeMap
59
59
  * // "<keys>": "STRING_VALUE",
60
60
  * // },
61
+ * // SamplingRateBoost: { // SamplingRateBoost
62
+ * // MaxRate: Number("double"), // required
63
+ * // CooldownWindowMinutes: Number("int"), // required
64
+ * // },
61
65
  * // },
62
66
  * // CreatedAt: new Date("TIMESTAMP"),
63
67
  * // ModifiedAt: new Date("TIMESTAMP"),
@@ -46,6 +46,16 @@ declare const GetSamplingTargetsCommand_base: {
46
46
  * BorrowCount: Number("int"),
47
47
  * },
48
48
  * ],
49
+ * SamplingBoostStatisticsDocuments: [ // SamplingBoostStatisticsDocumentList
50
+ * { // SamplingBoostStatisticsDocument
51
+ * RuleName: "STRING_VALUE", // required
52
+ * ServiceName: "STRING_VALUE", // required
53
+ * Timestamp: new Date("TIMESTAMP"), // required
54
+ * AnomalyCount: Number("int"), // required
55
+ * TotalCount: Number("int"), // required
56
+ * SampledAnomalyCount: Number("int"), // required
57
+ * },
58
+ * ],
49
59
  * };
50
60
  * const command = new GetSamplingTargetsCommand(input);
51
61
  * const response = await client.send(command);
@@ -57,6 +67,10 @@ declare const GetSamplingTargetsCommand_base: {
57
67
  * // ReservoirQuota: Number("int"),
58
68
  * // ReservoirQuotaTTL: new Date("TIMESTAMP"),
59
69
  * // Interval: Number("int"),
70
+ * // SamplingBoost: { // SamplingBoost
71
+ * // BoostRate: Number("double"), // required
72
+ * // BoostRateTTL: new Date("TIMESTAMP"), // required
73
+ * // },
60
74
  * // },
61
75
  * // ],
62
76
  * // LastRuleModification: new Date("TIMESTAMP"),
@@ -67,6 +81,13 @@ declare const GetSamplingTargetsCommand_base: {
67
81
  * // Message: "STRING_VALUE",
68
82
  * // },
69
83
  * // ],
84
+ * // UnprocessedBoostStatistics: [
85
+ * // {
86
+ * // RuleName: "STRING_VALUE",
87
+ * // ErrorCode: "STRING_VALUE",
88
+ * // Message: "STRING_VALUE",
89
+ * // },
90
+ * // ],
70
91
  * // };
71
92
  *
72
93
  * ```
@@ -28,7 +28,7 @@ declare const GetTraceSegmentDestinationCommand_base: {
28
28
  };
29
29
  /**
30
30
  * <p>
31
- * Retrieves the current destination of data sent to <code>PutTraceSegments</code> and <i>OpenTelemetry</i> API. The Transaction Search feature requires a CloudWatchLogs destination. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Transaction-Search.html">Transaction Search</a> and <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-OpenTelemetry-Sections.html">OpenTelemetry</a>.
31
+ * Retrieves the current destination of data sent to <code>PutTraceSegments</code> and <i>OpenTelemetry protocol (OTLP)</i> endpoint. The Transaction Search feature requires a CloudWatchLogs destination. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Transaction-Search.html">Transaction Search</a> and <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-OpenTelemetry-Sections.html">OpenTelemetry</a>.
32
32
  * </p>
33
33
  * @example
34
34
  * Use a bare-bones client and the command you need to make an API call.
@@ -30,11 +30,11 @@ declare const ListRetrievedTracesCommand_base: {
30
30
  * <p>
31
31
  * Retrieves a list of traces for a given <code>RetrievalToken</code> from the CloudWatch log group generated by Transaction Search. For information on what each trace returns, see <a href="https://docs.aws.amazon.com/xray/latest/api/API_BatchGetTraces.html">BatchGetTraces</a>.
32
32
  * </p>
33
- * <p>This API does not initiate a retrieval job. To start a trace retrieval, use <code>StartTraceRetrieval</code>, which generates the required <code>RetrievalToken</code>.</p>
33
+ * <p>This API does not initiate a retrieval process. To start a trace retrieval, use <code>StartTraceRetrieval</code>, which generates the required <code>RetrievalToken</code>.</p>
34
34
  * <p>
35
35
  * When the <code>RetrievalStatus</code> is not <i>COMPLETE</i>, the API will return an empty response. Retry the request once the retrieval has completed to access the full list of traces.</p>
36
- * <p>For cross-account observability, this API can retrieve traces from linked accounts when CloudWatch log is the destination across relevant accounts. For more details, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html">CloudWatch cross-account observability</a>.</p>
37
- * <p>For retrieving data from X-Ray directly as opposed to the Transaction-Search Log group, see <a href="https://docs.aws.amazon.com/xray/latest/api/API_BatchGetTraces.html">BatchGetTraces</a>.</p>
36
+ * <p>For cross-account observability, this API can retrieve traces from linked accounts when CloudWatch log is set as the destination across relevant accounts. For more details, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html">CloudWatch cross-account observability</a>.</p>
37
+ * <p>For retrieving data from X-Ray directly as opposed to the Transaction Search generated log group, see <a href="https://docs.aws.amazon.com/xray/latest/api/API_BatchGetTraces.html">BatchGetTraces</a>.</p>
38
38
  * @example
39
39
  * Use a bare-bones client and the command you need to make an API call.
40
40
  * ```javascript
@@ -28,7 +28,7 @@ declare const StartTraceRetrievalCommand_base: {
28
28
  };
29
29
  /**
30
30
  * <p>
31
- * Initiates a trace retrieval process using the specified time range and for the give trace IDs on Transaction Search generated by the CloudWatch log group. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Transaction-Search.html">Transaction Search</a>.
31
+ * Initiates a trace retrieval process using the specified time range and for the given trace IDs in the Transaction Search generated CloudWatch log group. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Transaction-Search.html">Transaction Search</a>.
32
32
  * </p>
33
33
  * <p>API returns a <code>RetrievalToken</code>, which can be used with <code>ListRetrievedTraces</code> or <code>GetRetrievedTracesGraph</code> to fetch results. Retrievals will time out after 60 minutes. To execute long time ranges, consider segmenting into multiple retrievals.</p>
34
34
  * <p>If you are using <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html">CloudWatch cross-account observability</a>, you can use this operation in a monitoring account to retrieve data from a linked source account, as long as both accounts have transaction search enabled.</p>
@@ -50,6 +50,10 @@ declare const UpdateSamplingRuleCommand_base: {
50
50
  * Attributes: { // AttributeMap
51
51
  * "<keys>": "STRING_VALUE",
52
52
  * },
53
+ * SamplingRateBoost: { // SamplingRateBoost
54
+ * MaxRate: Number("double"), // required
55
+ * CooldownWindowMinutes: Number("int"), // required
56
+ * },
53
57
  * },
54
58
  * };
55
59
  * const command = new UpdateSamplingRuleCommand(input);
@@ -72,6 +76,10 @@ declare const UpdateSamplingRuleCommand_base: {
72
76
  * // Attributes: { // AttributeMap
73
77
  * // "<keys>": "STRING_VALUE",
74
78
  * // },
79
+ * // SamplingRateBoost: { // SamplingRateBoost
80
+ * // MaxRate: Number("double"), // required
81
+ * // CooldownWindowMinutes: Number("int"), // required
82
+ * // },
75
83
  * // },
76
84
  * // CreatedAt: new Date("TIMESTAMP"),
77
85
  * // ModifiedAt: new Date("TIMESTAMP"),
@@ -189,8 +189,7 @@ export interface Trace {
189
189
  */
190
190
  Id?: string | undefined;
191
191
  /**
192
- * <p>The length of time in seconds between the start time of the root segment and the end
193
- * time of the last segment that completed.</p>
192
+ * <p>The length of time in seconds between the start time of the earliest segment that started and the end time of the last segment that completed.</p>
194
193
  * @public
195
194
  */
196
195
  Duration?: number | undefined;
@@ -449,6 +448,24 @@ export interface CreateGroupResult {
449
448
  */
450
449
  Group?: Group | undefined;
451
450
  }
451
+ /**
452
+ * <p>Enable temporary sampling rate increases when you detect anomalies to improve visibility.</p>
453
+ * @public
454
+ */
455
+ export interface SamplingRateBoost {
456
+ /**
457
+ * <p>Defines max temporary sampling rate to apply when a boost is triggered.
458
+ * Calculated boost rate by X-Ray will be less than or equal to this max rate.</p>
459
+ * @public
460
+ */
461
+ MaxRate: number | undefined;
462
+ /**
463
+ * <p>Sets the time window (in minutes) in which only one sampling rate boost can be triggered.
464
+ * After a boost occurs, no further boosts are allowed until the next window.</p>
465
+ * @public
466
+ */
467
+ CooldownWindowMinutes: number | undefined;
468
+ }
452
469
  /**
453
470
  * <p>A sampling rule that services use to decide whether to instrument a request. Rule
454
471
  * fields can match properties of the service, or properties of a request. The service can ignore
@@ -523,6 +540,12 @@ export interface SamplingRule {
523
540
  * @public
524
541
  */
525
542
  Attributes?: Record<string, string> | undefined;
543
+ /**
544
+ * <p>Specifies the multiplier applied to the base sampling rate.
545
+ * This boost allows you to temporarily increase sampling without changing the rule's configuration.</p>
546
+ * @public
547
+ */
548
+ SamplingRateBoost?: SamplingRateBoost | undefined;
526
549
  }
527
550
  /**
528
551
  * @public
@@ -1879,6 +1902,44 @@ export interface GetSamplingStatisticSummariesResult {
1879
1902
  */
1880
1903
  NextToken?: string | undefined;
1881
1904
  }
1905
+ /**
1906
+ * <p>Request anomaly stats for a single rule from a service. Results are for the last 10
1907
+ * seconds unless the service has been assigned a longer reporting interval after a previous call
1908
+ * to <a href="https://docs.aws.amazon.com/xray/latest/api/API_GetSamplingTargets.html">GetSamplingTargets</a>.</p>
1909
+ * @public
1910
+ */
1911
+ export interface SamplingBoostStatisticsDocument {
1912
+ /**
1913
+ * <p>The name of the sampling rule.</p>
1914
+ * @public
1915
+ */
1916
+ RuleName: string | undefined;
1917
+ /**
1918
+ * <p>Matches the <code>name</code> that the service uses to identify itself in segments.</p>
1919
+ * @public
1920
+ */
1921
+ ServiceName: string | undefined;
1922
+ /**
1923
+ * <p>The current time.</p>
1924
+ * @public
1925
+ */
1926
+ Timestamp: Date | undefined;
1927
+ /**
1928
+ * <p>The number of requests with anomaly.</p>
1929
+ * @public
1930
+ */
1931
+ AnomalyCount: number | undefined;
1932
+ /**
1933
+ * <p>The number of requests that associated to the rule.</p>
1934
+ * @public
1935
+ */
1936
+ TotalCount: number | undefined;
1937
+ /**
1938
+ * <p>The number of requests with anomaly recorded.</p>
1939
+ * @public
1940
+ */
1941
+ SampledAnomalyCount: number | undefined;
1942
+ }
1882
1943
  /**
1883
1944
  * <p>Request sampling results for a single rule from a service. Results are for the last 10
1884
1945
  * seconds unless the service has been assigned a longer reporting interval after a previous call
@@ -1926,6 +1987,28 @@ export interface GetSamplingTargetsRequest {
1926
1987
  * @public
1927
1988
  */
1928
1989
  SamplingStatisticsDocuments: SamplingStatisticsDocument[] | undefined;
1990
+ /**
1991
+ * <p>Information about rules that the service is using to boost sampling rate.</p>
1992
+ * @public
1993
+ */
1994
+ SamplingBoostStatisticsDocuments?: SamplingBoostStatisticsDocument[] | undefined;
1995
+ }
1996
+ /**
1997
+ * <p>Temporary boost sampling rate. X-Ray calculates sampling boost for each service based on the recent sampling boost stats of all services that called
1998
+ * <a href="https://docs.aws.amazon.com/xray/latest/api/API_GetSamplingTargets.html">GetSamplingTargets</a>.</p>
1999
+ * @public
2000
+ */
2001
+ export interface SamplingBoost {
2002
+ /**
2003
+ * <p>The calculated sampling boost rate for this service </p>
2004
+ * @public
2005
+ */
2006
+ BoostRate: number | undefined;
2007
+ /**
2008
+ * <p>When the sampling boost expires.</p>
2009
+ * @public
2010
+ */
2011
+ BoostRateTTL: Date | undefined;
1929
2012
  }
1930
2013
  /**
1931
2014
  * <p>Temporary changes to a sampling rule configuration. To meet the global sampling target for a rule, X-Ray
@@ -1961,6 +2044,11 @@ export interface SamplingTargetDocument {
1961
2044
  * @public
1962
2045
  */
1963
2046
  Interval?: number | undefined;
2047
+ /**
2048
+ * <p>The sampling boost that X-Ray allocated for this service.</p>
2049
+ * @public
2050
+ */
2051
+ SamplingBoost?: SamplingBoost | undefined;
1964
2052
  }
1965
2053
  /**
1966
2054
  * <p>Sampling statistics from a call to <a href="https://docs.aws.amazon.com/xray/latest/api/API_GetSamplingTargets.html">GetSamplingTargets</a> that X-Ray
@@ -2006,6 +2094,12 @@ export interface GetSamplingTargetsResult {
2006
2094
  * @public
2007
2095
  */
2008
2096
  UnprocessedStatistics?: UnprocessedStatistics[] | undefined;
2097
+ /**
2098
+ * <p>Information about <a href="https://docs.aws.amazon.com/xray/latest/api/API_SamplingBoostStatisticsDocument.html">SamplingBoostStatisticsDocument</a> that X-Ray could not
2099
+ * process.</p>
2100
+ * @public
2101
+ */
2102
+ UnprocessedBoostStatistics?: UnprocessedStatistics[] | undefined;
2009
2103
  }
2010
2104
  /**
2011
2105
  * @public
@@ -2677,8 +2771,7 @@ export interface TraceSummary {
2677
2771
  */
2678
2772
  StartTime?: Date | undefined;
2679
2773
  /**
2680
- * <p>The length of time in seconds between the start time of the root segment and the end
2681
- * time of the last segment that completed.</p>
2774
+ * <p> The length of time in seconds between the start time of the earliest segment that started and the end time of the last segment that completed.</p>
2682
2775
  * @public
2683
2776
  */
2684
2777
  Duration?: number | undefined;
@@ -3613,6 +3706,12 @@ export interface SamplingRuleUpdate {
3613
3706
  * @public
3614
3707
  */
3615
3708
  Attributes?: Record<string, string> | undefined;
3709
+ /**
3710
+ * <p>Specifies the multiplier applied to the base sampling rate.
3711
+ * This boost allows you to temporarily increase sampling without changing the rule's configuration.</p>
3712
+ * @public
3713
+ */
3714
+ SamplingRateBoost?: SamplingRateBoost | undefined;
3616
3715
  }
3617
3716
  /**
3618
3717
  * @public
@@ -128,6 +128,10 @@ export interface Group {
128
128
  export interface CreateGroupResult {
129
129
  Group?: Group | undefined;
130
130
  }
131
+ export interface SamplingRateBoost {
132
+ MaxRate: number | undefined;
133
+ CooldownWindowMinutes: number | undefined;
134
+ }
131
135
  export interface SamplingRule {
132
136
  RuleName?: string | undefined;
133
137
  RuleARN?: string | undefined;
@@ -142,6 +146,7 @@ export interface SamplingRule {
142
146
  URLPath: string | undefined;
143
147
  Version: number | undefined;
144
148
  Attributes?: Record<string, string> | undefined;
149
+ SamplingRateBoost?: SamplingRateBoost | undefined;
145
150
  }
146
151
  export interface CreateSamplingRuleRequest {
147
152
  SamplingRule: SamplingRule | undefined;
@@ -472,6 +477,14 @@ export interface GetSamplingStatisticSummariesResult {
472
477
  SamplingStatisticSummaries?: SamplingStatisticSummary[] | undefined;
473
478
  NextToken?: string | undefined;
474
479
  }
480
+ export interface SamplingBoostStatisticsDocument {
481
+ RuleName: string | undefined;
482
+ ServiceName: string | undefined;
483
+ Timestamp: Date | undefined;
484
+ AnomalyCount: number | undefined;
485
+ TotalCount: number | undefined;
486
+ SampledAnomalyCount: number | undefined;
487
+ }
475
488
  export interface SamplingStatisticsDocument {
476
489
  RuleName: string | undefined;
477
490
  ClientID: string | undefined;
@@ -482,6 +495,13 @@ export interface SamplingStatisticsDocument {
482
495
  }
483
496
  export interface GetSamplingTargetsRequest {
484
497
  SamplingStatisticsDocuments: SamplingStatisticsDocument[] | undefined;
498
+ SamplingBoostStatisticsDocuments?:
499
+ | SamplingBoostStatisticsDocument[]
500
+ | undefined;
501
+ }
502
+ export interface SamplingBoost {
503
+ BoostRate: number | undefined;
504
+ BoostRateTTL: Date | undefined;
485
505
  }
486
506
  export interface SamplingTargetDocument {
487
507
  RuleName?: string | undefined;
@@ -489,6 +509,7 @@ export interface SamplingTargetDocument {
489
509
  ReservoirQuota?: number | undefined;
490
510
  ReservoirQuotaTTL?: Date | undefined;
491
511
  Interval?: number | undefined;
512
+ SamplingBoost?: SamplingBoost | undefined;
492
513
  }
493
514
  export interface UnprocessedStatistics {
494
515
  RuleName?: string | undefined;
@@ -499,6 +520,7 @@ export interface GetSamplingTargetsResult {
499
520
  SamplingTargetDocuments?: SamplingTargetDocument[] | undefined;
500
521
  LastRuleModification?: Date | undefined;
501
522
  UnprocessedStatistics?: UnprocessedStatistics[] | undefined;
523
+ UnprocessedBoostStatistics?: UnprocessedStatistics[] | undefined;
502
524
  }
503
525
  export interface GetServiceGraphRequest {
504
526
  StartTime: Date | undefined;
@@ -906,6 +928,7 @@ export interface SamplingRuleUpdate {
906
928
  HTTPMethod?: string | undefined;
907
929
  URLPath?: string | undefined;
908
930
  Attributes?: Record<string, string> | undefined;
931
+ SamplingRateBoost?: SamplingRateBoost | undefined;
909
932
  }
910
933
  export interface UpdateSamplingRuleRequest {
911
934
  SamplingRuleUpdate: SamplingRuleUpdate | undefined;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-xray",
3
3
  "description": "AWS SDK for JavaScript Xray Client for Node.js, Browser and React Native",
4
- "version": "3.876.0",
4
+ "version": "3.879.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "node ../../scripts/compilation/inline client-xray",
@@ -20,38 +20,38 @@
20
20
  "dependencies": {
21
21
  "@aws-crypto/sha256-browser": "5.2.0",
22
22
  "@aws-crypto/sha256-js": "5.2.0",
23
- "@aws-sdk/core": "3.876.0",
24
- "@aws-sdk/credential-provider-node": "3.876.0",
23
+ "@aws-sdk/core": "3.879.0",
24
+ "@aws-sdk/credential-provider-node": "3.879.0",
25
25
  "@aws-sdk/middleware-host-header": "3.873.0",
26
26
  "@aws-sdk/middleware-logger": "3.876.0",
27
27
  "@aws-sdk/middleware-recursion-detection": "3.873.0",
28
- "@aws-sdk/middleware-user-agent": "3.876.0",
28
+ "@aws-sdk/middleware-user-agent": "3.879.0",
29
29
  "@aws-sdk/region-config-resolver": "3.873.0",
30
30
  "@aws-sdk/types": "3.862.0",
31
- "@aws-sdk/util-endpoints": "3.873.0",
31
+ "@aws-sdk/util-endpoints": "3.879.0",
32
32
  "@aws-sdk/util-user-agent-browser": "3.873.0",
33
- "@aws-sdk/util-user-agent-node": "3.876.0",
33
+ "@aws-sdk/util-user-agent-node": "3.879.0",
34
34
  "@smithy/config-resolver": "^4.1.5",
35
- "@smithy/core": "^3.8.0",
35
+ "@smithy/core": "^3.9.0",
36
36
  "@smithy/fetch-http-handler": "^5.1.1",
37
37
  "@smithy/hash-node": "^4.0.5",
38
38
  "@smithy/invalid-dependency": "^4.0.5",
39
39
  "@smithy/middleware-content-length": "^4.0.5",
40
- "@smithy/middleware-endpoint": "^4.1.18",
41
- "@smithy/middleware-retry": "^4.1.19",
40
+ "@smithy/middleware-endpoint": "^4.1.19",
41
+ "@smithy/middleware-retry": "^4.1.20",
42
42
  "@smithy/middleware-serde": "^4.0.9",
43
43
  "@smithy/middleware-stack": "^4.0.5",
44
44
  "@smithy/node-config-provider": "^4.1.4",
45
45
  "@smithy/node-http-handler": "^4.1.1",
46
46
  "@smithy/protocol-http": "^5.1.3",
47
- "@smithy/smithy-client": "^4.4.10",
47
+ "@smithy/smithy-client": "^4.5.0",
48
48
  "@smithy/types": "^4.3.2",
49
49
  "@smithy/url-parser": "^4.0.5",
50
50
  "@smithy/util-base64": "^4.0.0",
51
51
  "@smithy/util-body-length-browser": "^4.0.0",
52
52
  "@smithy/util-body-length-node": "^4.0.0",
53
- "@smithy/util-defaults-mode-browser": "^4.0.26",
54
- "@smithy/util-defaults-mode-node": "^4.0.26",
53
+ "@smithy/util-defaults-mode-browser": "^4.0.27",
54
+ "@smithy/util-defaults-mode-node": "^4.0.27",
55
55
  "@smithy/util-endpoints": "^3.0.7",
56
56
  "@smithy/util-middleware": "^4.0.5",
57
57
  "@smithy/util-retry": "^4.0.7",