@aws-sdk/client-appsync 3.509.0 → 3.512.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.
Files changed (26) hide show
  1. package/dist-cjs/index.js +44 -0
  2. package/dist-es/models/models_0.js +24 -0
  3. package/dist-es/protocols/Aws_restJson1.js +8 -0
  4. package/dist-types/commands/CreateApiCacheCommand.d.ts +2 -0
  5. package/dist-types/commands/CreateDataSourceCommand.d.ts +2 -0
  6. package/dist-types/commands/CreateFunctionCommand.d.ts +4 -0
  7. package/dist-types/commands/CreateGraphqlApiCommand.d.ts +10 -0
  8. package/dist-types/commands/CreateResolverCommand.d.ts +2 -0
  9. package/dist-types/commands/DeleteFunctionCommand.d.ts +4 -0
  10. package/dist-types/commands/GetApiCacheCommand.d.ts +1 -0
  11. package/dist-types/commands/GetDataSourceCommand.d.ts +1 -0
  12. package/dist-types/commands/GetGraphqlApiCommand.d.ts +5 -0
  13. package/dist-types/commands/GetResolverCommand.d.ts +1 -0
  14. package/dist-types/commands/ListDataSourcesCommand.d.ts +1 -0
  15. package/dist-types/commands/ListGraphqlApisCommand.d.ts +5 -0
  16. package/dist-types/commands/ListResolversByFunctionCommand.d.ts +1 -0
  17. package/dist-types/commands/ListResolversCommand.d.ts +1 -0
  18. package/dist-types/commands/PutGraphqlApiEnvironmentVariablesCommand.d.ts +1 -1
  19. package/dist-types/commands/UpdateApiCacheCommand.d.ts +2 -0
  20. package/dist-types/commands/UpdateDataSourceCommand.d.ts +2 -0
  21. package/dist-types/commands/UpdateFunctionCommand.d.ts +4 -0
  22. package/dist-types/commands/UpdateGraphqlApiCommand.d.ts +10 -0
  23. package/dist-types/commands/UpdateResolverCommand.d.ts +2 -0
  24. package/dist-types/models/models_0.d.ts +387 -1
  25. package/dist-types/ts3.4/models/models_0.d.ts +53 -0
  26. package/package.json +14 -14
package/dist-cjs/index.js CHANGED
@@ -39,6 +39,7 @@ __export(src_exports, {
39
39
  AuthorizationType: () => AuthorizationType,
40
40
  BadRequestException: () => BadRequestException,
41
41
  BadRequestReason: () => BadRequestReason,
42
+ CacheHealthMetricsConfig: () => CacheHealthMetricsConfig,
42
43
  ConcurrentModificationException: () => ConcurrentModificationException,
43
44
  ConflictDetectionType: () => ConflictDetectionType,
44
45
  ConflictHandlerType: () => ConflictHandlerType,
@@ -51,6 +52,8 @@ __export(src_exports, {
51
52
  CreateResolverCommand: () => CreateResolverCommand,
52
53
  CreateTypeCommand: () => CreateTypeCommand,
53
54
  DataSourceIntrospectionStatus: () => DataSourceIntrospectionStatus,
55
+ DataSourceLevelMetricsBehavior: () => DataSourceLevelMetricsBehavior,
56
+ DataSourceLevelMetricsConfig: () => DataSourceLevelMetricsConfig,
54
57
  DataSourceType: () => DataSourceType,
55
58
  DefaultAction: () => DefaultAction,
56
59
  DeleteApiCacheCommand: () => DeleteApiCacheCommand,
@@ -100,11 +103,14 @@ __export(src_exports, {
100
103
  ListTypesCommand: () => ListTypesCommand,
101
104
  MergeType: () => MergeType,
102
105
  NotFoundException: () => NotFoundException,
106
+ OperationLevelMetricsConfig: () => OperationLevelMetricsConfig,
103
107
  OutputType: () => OutputType,
104
108
  Ownership: () => Ownership,
105
109
  PutGraphqlApiEnvironmentVariablesCommand: () => PutGraphqlApiEnvironmentVariablesCommand,
106
110
  RelationalDatabaseSourceType: () => RelationalDatabaseSourceType,
107
111
  ResolverKind: () => ResolverKind,
112
+ ResolverLevelMetricsBehavior: () => ResolverLevelMetricsBehavior,
113
+ ResolverLevelMetricsConfig: () => ResolverLevelMetricsConfig,
108
114
  RuntimeName: () => RuntimeName,
109
115
  SchemaStatus: () => SchemaStatus,
110
116
  SourceApiAssociationStatus: () => SourceApiAssociationStatus,
@@ -274,6 +280,10 @@ var ApiCachingBehavior = {
274
280
  FULL_REQUEST_CACHING: "FULL_REQUEST_CACHING",
275
281
  PER_RESOLVER_CACHING: "PER_RESOLVER_CACHING"
276
282
  };
283
+ var CacheHealthMetricsConfig = {
284
+ DISABLED: "DISABLED",
285
+ ENABLED: "ENABLED"
286
+ };
277
287
  var ApiCacheStatus = {
278
288
  AVAILABLE: "AVAILABLE",
279
289
  CREATING: "CREATING",
@@ -476,6 +486,10 @@ var UnauthorizedException = _UnauthorizedException;
476
486
  var AuthorizationType = {
477
487
  AWS_IAM: "AWS_IAM"
478
488
  };
489
+ var DataSourceLevelMetricsConfig = {
490
+ DISABLED: "DISABLED",
491
+ ENABLED: "ENABLED"
492
+ };
479
493
  var RelationalDatabaseSourceType = {
480
494
  RDS_HTTP_ENDPOINT: "RDS_HTTP_ENDPOINT"
481
495
  };
@@ -503,6 +517,18 @@ var GraphQLApiType = {
503
517
  GRAPHQL: "GRAPHQL",
504
518
  MERGED: "MERGED"
505
519
  };
520
+ var DataSourceLevelMetricsBehavior = {
521
+ FULL_REQUEST_DATA_SOURCE_METRICS: "FULL_REQUEST_DATA_SOURCE_METRICS",
522
+ PER_DATA_SOURCE_METRICS: "PER_DATA_SOURCE_METRICS"
523
+ };
524
+ var OperationLevelMetricsConfig = {
525
+ DISABLED: "DISABLED",
526
+ ENABLED: "ENABLED"
527
+ };
528
+ var ResolverLevelMetricsBehavior = {
529
+ FULL_REQUEST_RESOLVER_METRICS: "FULL_REQUEST_RESOLVER_METRICS",
530
+ PER_RESOLVER_METRICS: "PER_RESOLVER_METRICS"
531
+ };
506
532
  var GraphQLApiIntrospectionConfig = {
507
533
  DISABLED: "DISABLED",
508
534
  ENABLED: "ENABLED"
@@ -524,6 +550,10 @@ var ResolverKind = {
524
550
  PIPELINE: "PIPELINE",
525
551
  UNIT: "UNIT"
526
552
  };
553
+ var ResolverLevelMetricsConfig = {
554
+ DISABLED: "DISABLED",
555
+ ENABLED: "ENABLED"
556
+ };
527
557
  var TypeDefinitionFormat = {
528
558
  JSON: "JSON",
529
559
  SDL: "SDL"
@@ -632,6 +662,7 @@ var se_CreateApiCacheCommand = /* @__PURE__ */ __name(async (input, context) =>
632
662
  (0, import_smithy_client.take)(input, {
633
663
  apiCachingBehavior: [],
634
664
  atRestEncryptionEnabled: [],
665
+ healthMetricsConfig: [],
635
666
  transitEncryptionEnabled: [],
636
667
  ttl: [],
637
668
  type: []
@@ -673,6 +704,7 @@ var se_CreateDataSourceCommand = /* @__PURE__ */ __name(async (input, context) =
673
704
  eventBridgeConfig: (_) => (0, import_smithy_client._json)(_),
674
705
  httpConfig: (_) => (0, import_smithy_client._json)(_),
675
706
  lambdaConfig: (_) => (0, import_smithy_client._json)(_),
707
+ metricsConfig: [],
676
708
  name: [],
677
709
  openSearchServiceConfig: (_) => (0, import_smithy_client._json)(_),
678
710
  relationalDatabaseConfig: (_) => (0, import_smithy_client._json)(_),
@@ -737,6 +769,7 @@ var se_CreateGraphqlApiCommand = /* @__PURE__ */ __name(async (input, context) =
737
769
  additionalAuthenticationProviders: (_) => (0, import_smithy_client._json)(_),
738
770
  apiType: [],
739
771
  authenticationType: [],
772
+ enhancedMetricsConfig: (_) => (0, import_smithy_client._json)(_),
740
773
  introspectionConfig: [],
741
774
  lambdaAuthorizerConfig: (_) => (0, import_smithy_client._json)(_),
742
775
  logConfig: (_) => (0, import_smithy_client._json)(_),
@@ -772,6 +805,7 @@ var se_CreateResolverCommand = /* @__PURE__ */ __name(async (input, context) =>
772
805
  fieldName: [],
773
806
  kind: [],
774
807
  maxBatchSize: [],
808
+ metricsConfig: [],
775
809
  pipelineConfig: (_) => (0, import_smithy_client._json)(_),
776
810
  requestMappingTemplate: [],
777
811
  responseMappingTemplate: [],
@@ -1327,6 +1361,7 @@ var se_UpdateApiCacheCommand = /* @__PURE__ */ __name(async (input, context) =>
1327
1361
  body = JSON.stringify(
1328
1362
  (0, import_smithy_client.take)(input, {
1329
1363
  apiCachingBehavior: [],
1364
+ healthMetricsConfig: [],
1330
1365
  ttl: [],
1331
1366
  type: []
1332
1367
  })
@@ -1369,6 +1404,7 @@ var se_UpdateDataSourceCommand = /* @__PURE__ */ __name(async (input, context) =
1369
1404
  eventBridgeConfig: (_) => (0, import_smithy_client._json)(_),
1370
1405
  httpConfig: (_) => (0, import_smithy_client._json)(_),
1371
1406
  lambdaConfig: (_) => (0, import_smithy_client._json)(_),
1407
+ metricsConfig: [],
1372
1408
  openSearchServiceConfig: (_) => (0, import_smithy_client._json)(_),
1373
1409
  relationalDatabaseConfig: (_) => (0, import_smithy_client._json)(_),
1374
1410
  serviceRoleArn: [],
@@ -1432,6 +1468,7 @@ var se_UpdateGraphqlApiCommand = /* @__PURE__ */ __name(async (input, context) =
1432
1468
  (0, import_smithy_client.take)(input, {
1433
1469
  additionalAuthenticationProviders: (_) => (0, import_smithy_client._json)(_),
1434
1470
  authenticationType: [],
1471
+ enhancedMetricsConfig: (_) => (0, import_smithy_client._json)(_),
1435
1472
  introspectionConfig: [],
1436
1473
  lambdaAuthorizerConfig: (_) => (0, import_smithy_client._json)(_),
1437
1474
  logConfig: (_) => (0, import_smithy_client._json)(_),
@@ -1465,6 +1502,7 @@ var se_UpdateResolverCommand = /* @__PURE__ */ __name(async (input, context) =>
1465
1502
  dataSourceName: [],
1466
1503
  kind: [],
1467
1504
  maxBatchSize: [],
1505
+ metricsConfig: [],
1468
1506
  pipelineConfig: (_) => (0, import_smithy_client._json)(_),
1469
1507
  requestMappingTemplate: [],
1470
1508
  responseMappingTemplate: [],
@@ -3919,6 +3957,7 @@ var import_util_endpoints = require("@aws-sdk/util-endpoints");
3919
3957
  AuthenticationType,
3920
3958
  AssociationStatus,
3921
3959
  ApiCachingBehavior,
3960
+ CacheHealthMetricsConfig,
3922
3961
  ApiCacheStatus,
3923
3962
  ApiCacheType,
3924
3963
  ApiKeyLimitExceededException,
@@ -3935,16 +3974,21 @@ var import_util_endpoints = require("@aws-sdk/util-endpoints");
3935
3974
  LimitExceededException,
3936
3975
  UnauthorizedException,
3937
3976
  AuthorizationType,
3977
+ DataSourceLevelMetricsConfig,
3938
3978
  RelationalDatabaseSourceType,
3939
3979
  DataSourceType,
3940
3980
  ConflictDetectionType,
3941
3981
  ConflictHandlerType,
3942
3982
  GraphQLApiType,
3983
+ DataSourceLevelMetricsBehavior,
3984
+ OperationLevelMetricsConfig,
3985
+ ResolverLevelMetricsBehavior,
3943
3986
  GraphQLApiIntrospectionConfig,
3944
3987
  FieldLogLevel,
3945
3988
  DefaultAction,
3946
3989
  GraphQLApiVisibility,
3947
3990
  ResolverKind,
3991
+ ResolverLevelMetricsConfig,
3948
3992
  TypeDefinitionFormat,
3949
3993
  DataSourceIntrospectionStatus,
3950
3994
  OutputType,
@@ -27,6 +27,10 @@ export const ApiCachingBehavior = {
27
27
  FULL_REQUEST_CACHING: "FULL_REQUEST_CACHING",
28
28
  PER_RESOLVER_CACHING: "PER_RESOLVER_CACHING",
29
29
  };
30
+ export const CacheHealthMetricsConfig = {
31
+ DISABLED: "DISABLED",
32
+ ENABLED: "ENABLED",
33
+ };
30
34
  export const ApiCacheStatus = {
31
35
  AVAILABLE: "AVAILABLE",
32
36
  CREATING: "CREATING",
@@ -184,6 +188,10 @@ export class UnauthorizedException extends __BaseException {
184
188
  export const AuthorizationType = {
185
189
  AWS_IAM: "AWS_IAM",
186
190
  };
191
+ export const DataSourceLevelMetricsConfig = {
192
+ DISABLED: "DISABLED",
193
+ ENABLED: "ENABLED",
194
+ };
187
195
  export const RelationalDatabaseSourceType = {
188
196
  RDS_HTTP_ENDPOINT: "RDS_HTTP_ENDPOINT",
189
197
  };
@@ -211,6 +219,18 @@ export const GraphQLApiType = {
211
219
  GRAPHQL: "GRAPHQL",
212
220
  MERGED: "MERGED",
213
221
  };
222
+ export const DataSourceLevelMetricsBehavior = {
223
+ FULL_REQUEST_DATA_SOURCE_METRICS: "FULL_REQUEST_DATA_SOURCE_METRICS",
224
+ PER_DATA_SOURCE_METRICS: "PER_DATA_SOURCE_METRICS",
225
+ };
226
+ export const OperationLevelMetricsConfig = {
227
+ DISABLED: "DISABLED",
228
+ ENABLED: "ENABLED",
229
+ };
230
+ export const ResolverLevelMetricsBehavior = {
231
+ FULL_REQUEST_RESOLVER_METRICS: "FULL_REQUEST_RESOLVER_METRICS",
232
+ PER_RESOLVER_METRICS: "PER_RESOLVER_METRICS",
233
+ };
214
234
  export const GraphQLApiIntrospectionConfig = {
215
235
  DISABLED: "DISABLED",
216
236
  ENABLED: "ENABLED",
@@ -232,6 +252,10 @@ export const ResolverKind = {
232
252
  PIPELINE: "PIPELINE",
233
253
  UNIT: "UNIT",
234
254
  };
255
+ export const ResolverLevelMetricsConfig = {
256
+ DISABLED: "DISABLED",
257
+ ENABLED: "ENABLED",
258
+ };
235
259
  export const TypeDefinitionFormat = {
236
260
  JSON: "JSON",
237
261
  SDL: "SDL",
@@ -59,6 +59,7 @@ export const se_CreateApiCacheCommand = async (input, context) => {
59
59
  body = JSON.stringify(take(input, {
60
60
  apiCachingBehavior: [],
61
61
  atRestEncryptionEnabled: [],
62
+ healthMetricsConfig: [],
62
63
  transitEncryptionEnabled: [],
63
64
  ttl: [],
64
65
  type: [],
@@ -96,6 +97,7 @@ export const se_CreateDataSourceCommand = async (input, context) => {
96
97
  eventBridgeConfig: (_) => _json(_),
97
98
  httpConfig: (_) => _json(_),
98
99
  lambdaConfig: (_) => _json(_),
100
+ metricsConfig: [],
99
101
  name: [],
100
102
  openSearchServiceConfig: (_) => _json(_),
101
103
  relationalDatabaseConfig: (_) => _json(_),
@@ -154,6 +156,7 @@ export const se_CreateGraphqlApiCommand = async (input, context) => {
154
156
  additionalAuthenticationProviders: (_) => _json(_),
155
157
  apiType: [],
156
158
  authenticationType: [],
159
+ enhancedMetricsConfig: (_) => _json(_),
157
160
  introspectionConfig: [],
158
161
  lambdaAuthorizerConfig: (_) => _json(_),
159
162
  logConfig: (_) => _json(_),
@@ -187,6 +190,7 @@ export const se_CreateResolverCommand = async (input, context) => {
187
190
  fieldName: [],
188
191
  kind: [],
189
192
  maxBatchSize: [],
193
+ metricsConfig: [],
190
194
  pipelineConfig: (_) => _json(_),
191
195
  requestMappingTemplate: [],
192
196
  responseMappingTemplate: [],
@@ -726,6 +730,7 @@ export const se_UpdateApiCacheCommand = async (input, context) => {
726
730
  let body;
727
731
  body = JSON.stringify(take(input, {
728
732
  apiCachingBehavior: [],
733
+ healthMetricsConfig: [],
729
734
  ttl: [],
730
735
  type: [],
731
736
  }));
@@ -764,6 +769,7 @@ export const se_UpdateDataSourceCommand = async (input, context) => {
764
769
  eventBridgeConfig: (_) => _json(_),
765
770
  httpConfig: (_) => _json(_),
766
771
  lambdaConfig: (_) => _json(_),
772
+ metricsConfig: [],
767
773
  openSearchServiceConfig: (_) => _json(_),
768
774
  relationalDatabaseConfig: (_) => _json(_),
769
775
  serviceRoleArn: [],
@@ -821,6 +827,7 @@ export const se_UpdateGraphqlApiCommand = async (input, context) => {
821
827
  body = JSON.stringify(take(input, {
822
828
  additionalAuthenticationProviders: (_) => _json(_),
823
829
  authenticationType: [],
830
+ enhancedMetricsConfig: (_) => _json(_),
824
831
  introspectionConfig: [],
825
832
  lambdaAuthorizerConfig: (_) => _json(_),
826
833
  logConfig: (_) => _json(_),
@@ -852,6 +859,7 @@ export const se_UpdateResolverCommand = async (input, context) => {
852
859
  dataSourceName: [],
853
860
  kind: [],
854
861
  maxBatchSize: [],
862
+ metricsConfig: [],
855
863
  pipelineConfig: (_) => _json(_),
856
864
  requestMappingTemplate: [],
857
865
  responseMappingTemplate: [],
@@ -40,6 +40,7 @@ declare const CreateApiCacheCommand_base: {
40
40
  * atRestEncryptionEnabled: true || false,
41
41
  * apiCachingBehavior: "FULL_REQUEST_CACHING" || "PER_RESOLVER_CACHING", // required
42
42
  * type: "T2_SMALL" || "T2_MEDIUM" || "R4_LARGE" || "R4_XLARGE" || "R4_2XLARGE" || "R4_4XLARGE" || "R4_8XLARGE" || "SMALL" || "MEDIUM" || "LARGE" || "XLARGE" || "LARGE_2X" || "LARGE_4X" || "LARGE_8X" || "LARGE_12X", // required
43
+ * healthMetricsConfig: "ENABLED" || "DISABLED",
43
44
  * };
44
45
  * const command = new CreateApiCacheCommand(input);
45
46
  * const response = await client.send(command);
@@ -51,6 +52,7 @@ declare const CreateApiCacheCommand_base: {
51
52
  * // atRestEncryptionEnabled: true || false,
52
53
  * // type: "T2_SMALL" || "T2_MEDIUM" || "R4_LARGE" || "R4_XLARGE" || "R4_2XLARGE" || "R4_4XLARGE" || "R4_8XLARGE" || "SMALL" || "MEDIUM" || "LARGE" || "XLARGE" || "LARGE_2X" || "LARGE_4X" || "LARGE_8X" || "LARGE_12X",
53
54
  * // status: "AVAILABLE" || "CREATING" || "DELETING" || "MODIFYING" || "FAILED",
55
+ * // healthMetricsConfig: "ENABLED" || "DISABLED",
54
56
  * // },
55
57
  * // };
56
58
  *
@@ -84,6 +84,7 @@ declare const CreateDataSourceCommand_base: {
84
84
  * eventBridgeConfig: { // EventBridgeDataSourceConfig
85
85
  * eventBusArn: "STRING_VALUE", // required
86
86
  * },
87
+ * metricsConfig: "ENABLED" || "DISABLED",
87
88
  * };
88
89
  * const command = new CreateDataSourceCommand(input);
89
90
  * const response = await client.send(command);
@@ -139,6 +140,7 @@ declare const CreateDataSourceCommand_base: {
139
140
  * // eventBridgeConfig: { // EventBridgeDataSourceConfig
140
141
  * // eventBusArn: "STRING_VALUE", // required
141
142
  * // },
143
+ * // metricsConfig: "ENABLED" || "DISABLED",
142
144
  * // },
143
145
  * // };
144
146
  *
@@ -92,6 +92,10 @@ declare const CreateFunctionCommand_base: {
92
92
  * @see {@link CreateFunctionCommandOutput} for command's `response` shape.
93
93
  * @see {@link AppSyncClientResolvedConfig | config} for AppSyncClient's `config` shape.
94
94
  *
95
+ * @throws {@link BadRequestException} (client fault)
96
+ * <p>The request is not well formed. For example, a value is invalid or a required field is missing. Check the
97
+ * field values, and then try again.</p>
98
+ *
95
99
  * @throws {@link ConcurrentModificationException} (client fault)
96
100
  * <p>Another modification is in progress at this time and it must complete before you can make your
97
101
  * change.</p>
@@ -90,6 +90,11 @@ declare const CreateGraphqlApiCommand_base: {
90
90
  * introspectionConfig: "ENABLED" || "DISABLED",
91
91
  * queryDepthLimit: Number("int"),
92
92
  * resolverCountLimit: Number("int"),
93
+ * enhancedMetricsConfig: { // EnhancedMetricsConfig
94
+ * resolverLevelMetricsBehavior: "FULL_REQUEST_RESOLVER_METRICS" || "PER_RESOLVER_METRICS", // required
95
+ * dataSourceLevelMetricsBehavior: "FULL_REQUEST_DATA_SOURCE_METRICS" || "PER_DATA_SOURCE_METRICS", // required
96
+ * operationLevelMetricsConfig: "ENABLED" || "DISABLED", // required
97
+ * },
93
98
  * };
94
99
  * const command = new CreateGraphqlApiCommand(input);
95
100
  * const response = await client.send(command);
@@ -161,6 +166,11 @@ declare const CreateGraphqlApiCommand_base: {
161
166
  * // introspectionConfig: "ENABLED" || "DISABLED",
162
167
  * // queryDepthLimit: Number("int"),
163
168
  * // resolverCountLimit: Number("int"),
169
+ * // enhancedMetricsConfig: { // EnhancedMetricsConfig
170
+ * // resolverLevelMetricsBehavior: "FULL_REQUEST_RESOLVER_METRICS" || "PER_RESOLVER_METRICS", // required
171
+ * // dataSourceLevelMetricsBehavior: "FULL_REQUEST_DATA_SOURCE_METRICS" || "PER_DATA_SOURCE_METRICS", // required
172
+ * // operationLevelMetricsConfig: "ENABLED" || "DISABLED", // required
173
+ * // },
164
174
  * // },
165
175
  * // };
166
176
  *
@@ -67,6 +67,7 @@ declare const CreateResolverCommand_base: {
67
67
  * runtimeVersion: "STRING_VALUE", // required
68
68
  * },
69
69
  * code: "STRING_VALUE",
70
+ * metricsConfig: "ENABLED" || "DISABLED",
70
71
  * };
71
72
  * const command = new CreateResolverCommand(input);
72
73
  * const response = await client.send(command);
@@ -103,6 +104,7 @@ declare const CreateResolverCommand_base: {
103
104
  * // runtimeVersion: "STRING_VALUE", // required
104
105
  * // },
105
106
  * // code: "STRING_VALUE",
107
+ * // metricsConfig: "ENABLED" || "DISABLED",
106
108
  * // },
107
109
  * // };
108
110
  *
@@ -49,6 +49,10 @@ declare const DeleteFunctionCommand_base: {
49
49
  * @see {@link DeleteFunctionCommandOutput} for command's `response` shape.
50
50
  * @see {@link AppSyncClientResolvedConfig | config} for AppSyncClient's `config` shape.
51
51
  *
52
+ * @throws {@link BadRequestException} (client fault)
53
+ * <p>The request is not well formed. For example, a value is invalid or a required field is missing. Check the
54
+ * field values, and then try again.</p>
55
+ *
52
56
  * @throws {@link ConcurrentModificationException} (client fault)
53
57
  * <p>Another modification is in progress at this time and it must complete before you can make your
54
58
  * change.</p>
@@ -46,6 +46,7 @@ declare const GetApiCacheCommand_base: {
46
46
  * // atRestEncryptionEnabled: true || false,
47
47
  * // type: "T2_SMALL" || "T2_MEDIUM" || "R4_LARGE" || "R4_XLARGE" || "R4_2XLARGE" || "R4_4XLARGE" || "R4_8XLARGE" || "SMALL" || "MEDIUM" || "LARGE" || "XLARGE" || "LARGE_2X" || "LARGE_4X" || "LARGE_8X" || "LARGE_12X",
48
48
  * // status: "AVAILABLE" || "CREATING" || "DELETING" || "MODIFYING" || "FAILED",
49
+ * // healthMetricsConfig: "ENABLED" || "DISABLED",
49
50
  * // },
50
51
  * // };
51
52
  *
@@ -91,6 +91,7 @@ declare const GetDataSourceCommand_base: {
91
91
  * // eventBridgeConfig: { // EventBridgeDataSourceConfig
92
92
  * // eventBusArn: "STRING_VALUE", // required
93
93
  * // },
94
+ * // metricsConfig: "ENABLED" || "DISABLED",
94
95
  * // },
95
96
  * // };
96
97
  *
@@ -106,6 +106,11 @@ declare const GetGraphqlApiCommand_base: {
106
106
  * // introspectionConfig: "ENABLED" || "DISABLED",
107
107
  * // queryDepthLimit: Number("int"),
108
108
  * // resolverCountLimit: Number("int"),
109
+ * // enhancedMetricsConfig: { // EnhancedMetricsConfig
110
+ * // resolverLevelMetricsBehavior: "FULL_REQUEST_RESOLVER_METRICS" || "PER_RESOLVER_METRICS", // required
111
+ * // dataSourceLevelMetricsBehavior: "FULL_REQUEST_DATA_SOURCE_METRICS" || "PER_DATA_SOURCE_METRICS", // required
112
+ * // operationLevelMetricsConfig: "ENABLED" || "DISABLED", // required
113
+ * // },
109
114
  * // },
110
115
  * // };
111
116
  *
@@ -73,6 +73,7 @@ declare const GetResolverCommand_base: {
73
73
  * // runtimeVersion: "STRING_VALUE", // required
74
74
  * // },
75
75
  * // code: "STRING_VALUE",
76
+ * // metricsConfig: "ENABLED" || "DISABLED",
76
77
  * // },
77
78
  * // };
78
79
  *
@@ -93,6 +93,7 @@ declare const ListDataSourcesCommand_base: {
93
93
  * // eventBridgeConfig: { // EventBridgeDataSourceConfig
94
94
  * // eventBusArn: "STRING_VALUE", // required
95
95
  * // },
96
+ * // metricsConfig: "ENABLED" || "DISABLED",
96
97
  * // },
97
98
  * // ],
98
99
  * // nextToken: "STRING_VALUE",
@@ -110,6 +110,11 @@ declare const ListGraphqlApisCommand_base: {
110
110
  * // introspectionConfig: "ENABLED" || "DISABLED",
111
111
  * // queryDepthLimit: Number("int"),
112
112
  * // resolverCountLimit: Number("int"),
113
+ * // enhancedMetricsConfig: { // EnhancedMetricsConfig
114
+ * // resolverLevelMetricsBehavior: "FULL_REQUEST_RESOLVER_METRICS" || "PER_RESOLVER_METRICS", // required
115
+ * // dataSourceLevelMetricsBehavior: "FULL_REQUEST_DATA_SOURCE_METRICS" || "PER_DATA_SOURCE_METRICS", // required
116
+ * // operationLevelMetricsConfig: "ENABLED" || "DISABLED", // required
117
+ * // },
113
118
  * // },
114
119
  * // ],
115
120
  * // nextToken: "STRING_VALUE",
@@ -75,6 +75,7 @@ declare const ListResolversByFunctionCommand_base: {
75
75
  * // runtimeVersion: "STRING_VALUE", // required
76
76
  * // },
77
77
  * // code: "STRING_VALUE",
78
+ * // metricsConfig: "ENABLED" || "DISABLED",
78
79
  * // },
79
80
  * // ],
80
81
  * // nextToken: "STRING_VALUE",
@@ -75,6 +75,7 @@ declare const ListResolversCommand_base: {
75
75
  * // runtimeVersion: "STRING_VALUE", // required
76
76
  * // },
77
77
  * // code: "STRING_VALUE",
78
+ * // metricsConfig: "ENABLED" || "DISABLED",
78
79
  * // },
79
80
  * // ],
80
81
  * // nextToken: "STRING_VALUE",
@@ -67,7 +67,7 @@ declare const PutGraphqlApiEnvironmentVariablesCommand_base: {
67
67
  * </ul>
68
68
  * <p>You can create a list of environmental variables by adding it to the <code>environmentVariables</code>
69
69
  * payload as a list in the format <code>\{"key1":"value1","key2":"value2", …\}</code>. Note that each call of the
70
- * <code>PutGraphqlApiEnvironmentVariables</code> action will result in the overwriting of the existing
70
+ * <code>PutGraphqlApiEnvironmentVariables</code> action will result in the overwriting of the existing
71
71
  * environmental variable list of that API. This means the existing environmental variables will be lost. To avoid
72
72
  * this, you must include all existing and new environmental variables in the list each time you call this
73
73
  * action.</p>
@@ -38,6 +38,7 @@ declare const UpdateApiCacheCommand_base: {
38
38
  * ttl: Number("long"), // required
39
39
  * apiCachingBehavior: "FULL_REQUEST_CACHING" || "PER_RESOLVER_CACHING", // required
40
40
  * type: "T2_SMALL" || "T2_MEDIUM" || "R4_LARGE" || "R4_XLARGE" || "R4_2XLARGE" || "R4_4XLARGE" || "R4_8XLARGE" || "SMALL" || "MEDIUM" || "LARGE" || "XLARGE" || "LARGE_2X" || "LARGE_4X" || "LARGE_8X" || "LARGE_12X", // required
41
+ * healthMetricsConfig: "ENABLED" || "DISABLED",
41
42
  * };
42
43
  * const command = new UpdateApiCacheCommand(input);
43
44
  * const response = await client.send(command);
@@ -49,6 +50,7 @@ declare const UpdateApiCacheCommand_base: {
49
50
  * // atRestEncryptionEnabled: true || false,
50
51
  * // type: "T2_SMALL" || "T2_MEDIUM" || "R4_LARGE" || "R4_XLARGE" || "R4_2XLARGE" || "R4_4XLARGE" || "R4_8XLARGE" || "SMALL" || "MEDIUM" || "LARGE" || "XLARGE" || "LARGE_2X" || "LARGE_4X" || "LARGE_8X" || "LARGE_12X",
51
52
  * // status: "AVAILABLE" || "CREATING" || "DELETING" || "MODIFYING" || "FAILED",
53
+ * // healthMetricsConfig: "ENABLED" || "DISABLED",
52
54
  * // },
53
55
  * // };
54
56
  *
@@ -84,6 +84,7 @@ declare const UpdateDataSourceCommand_base: {
84
84
  * eventBridgeConfig: { // EventBridgeDataSourceConfig
85
85
  * eventBusArn: "STRING_VALUE", // required
86
86
  * },
87
+ * metricsConfig: "ENABLED" || "DISABLED",
87
88
  * };
88
89
  * const command = new UpdateDataSourceCommand(input);
89
90
  * const response = await client.send(command);
@@ -139,6 +140,7 @@ declare const UpdateDataSourceCommand_base: {
139
140
  * // eventBridgeConfig: { // EventBridgeDataSourceConfig
140
141
  * // eventBusArn: "STRING_VALUE", // required
141
142
  * // },
143
+ * // metricsConfig: "ENABLED" || "DISABLED",
142
144
  * // },
143
145
  * // };
144
146
  *
@@ -92,6 +92,10 @@ declare const UpdateFunctionCommand_base: {
92
92
  * @see {@link UpdateFunctionCommandOutput} for command's `response` shape.
93
93
  * @see {@link AppSyncClientResolvedConfig | config} for AppSyncClient's `config` shape.
94
94
  *
95
+ * @throws {@link BadRequestException} (client fault)
96
+ * <p>The request is not well formed. For example, a value is invalid or a required field is missing. Check the
97
+ * field values, and then try again.</p>
98
+ *
95
99
  * @throws {@link ConcurrentModificationException} (client fault)
96
100
  * <p>Another modification is in progress at this time and it must complete before you can make your
97
101
  * change.</p>
@@ -86,6 +86,11 @@ declare const UpdateGraphqlApiCommand_base: {
86
86
  * introspectionConfig: "ENABLED" || "DISABLED",
87
87
  * queryDepthLimit: Number("int"),
88
88
  * resolverCountLimit: Number("int"),
89
+ * enhancedMetricsConfig: { // EnhancedMetricsConfig
90
+ * resolverLevelMetricsBehavior: "FULL_REQUEST_RESOLVER_METRICS" || "PER_RESOLVER_METRICS", // required
91
+ * dataSourceLevelMetricsBehavior: "FULL_REQUEST_DATA_SOURCE_METRICS" || "PER_DATA_SOURCE_METRICS", // required
92
+ * operationLevelMetricsConfig: "ENABLED" || "DISABLED", // required
93
+ * },
89
94
  * };
90
95
  * const command = new UpdateGraphqlApiCommand(input);
91
96
  * const response = await client.send(command);
@@ -157,6 +162,11 @@ declare const UpdateGraphqlApiCommand_base: {
157
162
  * // introspectionConfig: "ENABLED" || "DISABLED",
158
163
  * // queryDepthLimit: Number("int"),
159
164
  * // resolverCountLimit: Number("int"),
165
+ * // enhancedMetricsConfig: { // EnhancedMetricsConfig
166
+ * // resolverLevelMetricsBehavior: "FULL_REQUEST_RESOLVER_METRICS" || "PER_RESOLVER_METRICS", // required
167
+ * // dataSourceLevelMetricsBehavior: "FULL_REQUEST_DATA_SOURCE_METRICS" || "PER_DATA_SOURCE_METRICS", // required
168
+ * // operationLevelMetricsConfig: "ENABLED" || "DISABLED", // required
169
+ * // },
160
170
  * // },
161
171
  * // };
162
172
  *
@@ -65,6 +65,7 @@ declare const UpdateResolverCommand_base: {
65
65
  * runtimeVersion: "STRING_VALUE", // required
66
66
  * },
67
67
  * code: "STRING_VALUE",
68
+ * metricsConfig: "ENABLED" || "DISABLED",
68
69
  * };
69
70
  * const command = new UpdateResolverCommand(input);
70
71
  * const response = await client.send(command);
@@ -101,6 +102,7 @@ declare const UpdateResolverCommand_base: {
101
102
  * // runtimeVersion: "STRING_VALUE", // required
102
103
  * // },
103
104
  * // code: "STRING_VALUE",
105
+ * // metricsConfig: "ENABLED" || "DISABLED",
104
106
  * // },
105
107
  * // };
106
108
  *
@@ -209,6 +209,18 @@ export declare const ApiCachingBehavior: {
209
209
  * @public
210
210
  */
211
211
  export type ApiCachingBehavior = (typeof ApiCachingBehavior)[keyof typeof ApiCachingBehavior];
212
+ /**
213
+ * @public
214
+ * @enum
215
+ */
216
+ export declare const CacheHealthMetricsConfig: {
217
+ readonly DISABLED: "DISABLED";
218
+ readonly ENABLED: "ENABLED";
219
+ };
220
+ /**
221
+ * @public
222
+ */
223
+ export type CacheHealthMetricsConfig = (typeof CacheHealthMetricsConfig)[keyof typeof CacheHealthMetricsConfig];
212
224
  /**
213
225
  * @public
214
226
  * @enum
@@ -391,6 +403,24 @@ export interface ApiCache {
391
403
  * </ul>
392
404
  */
393
405
  status?: ApiCacheStatus;
406
+ /**
407
+ * @public
408
+ * <p>Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:</p>
409
+ * <ul>
410
+ * <li>
411
+ * <p>NetworkBandwidthOutAllowanceExceeded: The network packets dropped because the throughput exceeded
412
+ * the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache
413
+ * configuration.</p>
414
+ * </li>
415
+ * <li>
416
+ * <p>EngineCPUUtilization: The CPU utilization (percentage) allocated to the Redis process. This is
417
+ * useful for diagnosing bottlenecks in a cache configuration.</p>
418
+ * </li>
419
+ * </ul>
420
+ * <p>Metrics will be recorded by API ID. You can set the value to <code>ENABLED</code> or
421
+ * <code>DISABLED</code>.</p>
422
+ */
423
+ healthMetricsConfig?: CacheHealthMetricsConfig;
394
424
  }
395
425
  /**
396
426
  * @public
@@ -1088,6 +1118,23 @@ export interface CreateApiCacheRequest {
1088
1118
  * </ul>
1089
1119
  */
1090
1120
  type: ApiCacheType | undefined;
1121
+ /**
1122
+ * @public
1123
+ * <p>Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:</p>
1124
+ * <ul>
1125
+ * <li>
1126
+ * <p>NetworkBandwidthOutAllowanceExceeded: The number of times a specified GraphQL operation was
1127
+ * called.</p>
1128
+ * </li>
1129
+ * <li>
1130
+ * <p>EngineCPUUtilization: The number of GraphQL errors that occurred during a specified GraphQL
1131
+ * operation.</p>
1132
+ * </li>
1133
+ * </ul>
1134
+ * <p>Metrics will be recorded by API ID. You can set the value to <code>ENABLED</code> or
1135
+ * <code>DISABLED</code>.</p>
1136
+ */
1137
+ healthMetricsConfig?: CacheHealthMetricsConfig;
1091
1138
  }
1092
1139
  /**
1093
1140
  * @public
@@ -1243,6 +1290,18 @@ export interface LambdaDataSourceConfig {
1243
1290
  */
1244
1291
  lambdaFunctionArn: string | undefined;
1245
1292
  }
1293
+ /**
1294
+ * @public
1295
+ * @enum
1296
+ */
1297
+ export declare const DataSourceLevelMetricsConfig: {
1298
+ readonly DISABLED: "DISABLED";
1299
+ readonly ENABLED: "ENABLED";
1300
+ };
1301
+ /**
1302
+ * @public
1303
+ */
1304
+ export type DataSourceLevelMetricsConfig = (typeof DataSourceLevelMetricsConfig)[keyof typeof DataSourceLevelMetricsConfig];
1246
1305
  /**
1247
1306
  * @public
1248
1307
  * <p>Describes an OpenSearch data source configuration.</p>
@@ -1410,6 +1469,17 @@ export interface CreateDataSourceRequest {
1410
1469
  * <p>Amazon EventBridge settings.</p>
1411
1470
  */
1412
1471
  eventBridgeConfig?: EventBridgeDataSourceConfig;
1472
+ /**
1473
+ * @public
1474
+ * <p>Enables or disables enhanced data source metrics for specified data sources. Note that
1475
+ * <code>metricsConfig</code> won't be used unless the <code>dataSourceLevelMetricsBehavior</code> value is set
1476
+ * to <code>PER_DATA_SOURCE_METRICS</code>. If the <code>dataSourceLevelMetricsBehavior</code> is set to
1477
+ * <code>FULL_REQUEST_DATA_SOURCE_METRICS</code> instead, <code>metricsConfig</code> will be ignored. However,
1478
+ * you can still set its value.</p>
1479
+ * <p>
1480
+ * <code>metricsConfig</code> can be <code>ENABLED</code> or <code>DISABLED</code>.</p>
1481
+ */
1482
+ metricsConfig?: DataSourceLevelMetricsConfig;
1413
1483
  }
1414
1484
  /**
1415
1485
  * @public
@@ -1518,6 +1588,17 @@ export interface DataSource {
1518
1588
  * <p>Amazon EventBridge settings.</p>
1519
1589
  */
1520
1590
  eventBridgeConfig?: EventBridgeDataSourceConfig;
1591
+ /**
1592
+ * @public
1593
+ * <p>Enables or disables enhanced data source metrics for specified data sources. Note that
1594
+ * <code>metricsConfig</code> won't be used unless the <code>dataSourceLevelMetricsBehavior</code> value is set
1595
+ * to <code>PER_DATA_SOURCE_METRICS</code>. If the <code>dataSourceLevelMetricsBehavior</code> is set to
1596
+ * <code>FULL_REQUEST_DATA_SOURCE_METRICS</code> instead, <code>metricsConfig</code> will be ignored. However,
1597
+ * you can still set its value.</p>
1598
+ * <p>
1599
+ * <code>metricsConfig</code> can be <code>ENABLED</code> or <code>DISABLED</code>.</p>
1600
+ */
1601
+ metricsConfig?: DataSourceLevelMetricsConfig;
1521
1602
  }
1522
1603
  /**
1523
1604
  * @public
@@ -1844,6 +1925,223 @@ export declare const GraphQLApiType: {
1844
1925
  * @public
1845
1926
  */
1846
1927
  export type GraphQLApiType = (typeof GraphQLApiType)[keyof typeof GraphQLApiType];
1928
+ /**
1929
+ * @public
1930
+ * @enum
1931
+ */
1932
+ export declare const DataSourceLevelMetricsBehavior: {
1933
+ readonly FULL_REQUEST_DATA_SOURCE_METRICS: "FULL_REQUEST_DATA_SOURCE_METRICS";
1934
+ readonly PER_DATA_SOURCE_METRICS: "PER_DATA_SOURCE_METRICS";
1935
+ };
1936
+ /**
1937
+ * @public
1938
+ */
1939
+ export type DataSourceLevelMetricsBehavior = (typeof DataSourceLevelMetricsBehavior)[keyof typeof DataSourceLevelMetricsBehavior];
1940
+ /**
1941
+ * @public
1942
+ * @enum
1943
+ */
1944
+ export declare const OperationLevelMetricsConfig: {
1945
+ readonly DISABLED: "DISABLED";
1946
+ readonly ENABLED: "ENABLED";
1947
+ };
1948
+ /**
1949
+ * @public
1950
+ */
1951
+ export type OperationLevelMetricsConfig = (typeof OperationLevelMetricsConfig)[keyof typeof OperationLevelMetricsConfig];
1952
+ /**
1953
+ * @public
1954
+ * @enum
1955
+ */
1956
+ export declare const ResolverLevelMetricsBehavior: {
1957
+ readonly FULL_REQUEST_RESOLVER_METRICS: "FULL_REQUEST_RESOLVER_METRICS";
1958
+ readonly PER_RESOLVER_METRICS: "PER_RESOLVER_METRICS";
1959
+ };
1960
+ /**
1961
+ * @public
1962
+ */
1963
+ export type ResolverLevelMetricsBehavior = (typeof ResolverLevelMetricsBehavior)[keyof typeof ResolverLevelMetricsBehavior];
1964
+ /**
1965
+ * @public
1966
+ * <p>Enables and controls the enhanced metrics feature. Enhanced metrics emit granular data on API usage and
1967
+ * performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data
1968
+ * is sent to your CloudWatch account, and you can configure the types of data that will be sent. </p>
1969
+ * <p>Enhanced metrics can be configured at the resolver, data source, and operation levels.
1970
+ * <code>EnhancedMetricsConfig</code> contains three required parameters, each controlling one of these
1971
+ * categories:</p>
1972
+ * <ol>
1973
+ * <li>
1974
+ * <p>
1975
+ * <code>resolverLevelMetricsBehavior</code>: Controls how resolver metrics will be emitted to
1976
+ * CloudWatch. Resolver metrics include:</p>
1977
+ * <ul>
1978
+ * <li>
1979
+ * <p>GraphQL errors: The number of GraphQL errors that occurred.</p>
1980
+ * </li>
1981
+ * <li>
1982
+ * <p>Requests: The number of invocations that occurred during a request. </p>
1983
+ * </li>
1984
+ * <li>
1985
+ * <p>Latency: The time to complete a resolver invocation.</p>
1986
+ * </li>
1987
+ * <li>
1988
+ * <p>Cache hits: The number of cache hits during a request.</p>
1989
+ * </li>
1990
+ * <li>
1991
+ * <p>Cache misses: The number of cache misses during a request.</p>
1992
+ * </li>
1993
+ * </ul>
1994
+ * <p>These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics
1995
+ * will be recorded by API ID and resolver name. <code>resolverLevelMetricsBehavior</code> accepts one of
1996
+ * these values at a time:</p>
1997
+ * <ul>
1998
+ * <li>
1999
+ * <p>
2000
+ * <code>FULL_REQUEST_RESOLVER_METRICS</code>: Records and emits metric data for all resolvers
2001
+ * in the request.</p>
2002
+ * </li>
2003
+ * <li>
2004
+ * <p>
2005
+ * <code>PER_RESOLVER_METRICS</code>: Records and emits metric data for resolvers that have the
2006
+ * <code>metricConfig</code> value set to <code>ENABLED</code>.</p>
2007
+ * </li>
2008
+ * </ul>
2009
+ * </li>
2010
+ * <li>
2011
+ * <p>
2012
+ * <code>dataSourceLevelMetricsBehavior</code>: Controls how data source metrics will be emitted to
2013
+ * CloudWatch. Data source metrics include:</p>
2014
+ * <ul>
2015
+ * <li>
2016
+ * <p>Requests: The number of invocations that occured during a request.</p>
2017
+ * </li>
2018
+ * <li>
2019
+ * <p>Latency: The time to complete a data source invocation.</p>
2020
+ * </li>
2021
+ * <li>
2022
+ * <p>Errors: The number of errors that occurred during a data source invocation.</p>
2023
+ * </li>
2024
+ * </ul>
2025
+ * <p>These metrics can be emitted to CloudWatch per data source or for all data sources in the request.
2026
+ * Metrics will be recorded by API ID and data source name. <code>dataSourceLevelMetricsBehavior</code>
2027
+ * accepts one of these values at a time:</p>
2028
+ * <ul>
2029
+ * <li>
2030
+ * <p>
2031
+ * <code>FULL_REQUEST_DATA_SOURCE_METRICS</code>: Records and emits metric data for all data
2032
+ * sources in the request.</p>
2033
+ * </li>
2034
+ * <li>
2035
+ * <p>
2036
+ * <code>PER_DATA_SOURCE_METRICS</code>: Records and emits metric data for data sources that
2037
+ * have the <code>metricConfig</code> value set to <code>ENABLED</code>.</p>
2038
+ * </li>
2039
+ * </ul>
2040
+ * </li>
2041
+ * <li>
2042
+ * <p>
2043
+ * <code>operationLevelMetricsConfig</code>: Controls how operation metrics will be emitted to
2044
+ * CloudWatch. Operation metrics include:</p>
2045
+ * <ul>
2046
+ * <li>
2047
+ * <p>Requests: The number of times a specified GraphQL operation was called.</p>
2048
+ * </li>
2049
+ * <li>
2050
+ * <p>GraphQL errors: The number of GraphQL errors that occurred during a specified GraphQL
2051
+ * operation.</p>
2052
+ * </li>
2053
+ * </ul>
2054
+ * <p>Metrics will be recorded by API ID and operation name. You can set the value to <code>ENABLED</code>
2055
+ * or <code>DISABLED</code>.</p>
2056
+ * </li>
2057
+ * </ol>
2058
+ */
2059
+ export interface EnhancedMetricsConfig {
2060
+ /**
2061
+ * @public
2062
+ * <p>Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:</p>
2063
+ * <ul>
2064
+ * <li>
2065
+ * <p>GraphQL errors: The number of GraphQL errors that occurred.</p>
2066
+ * </li>
2067
+ * <li>
2068
+ * <p>Requests: The number of invocations that occurred during a request. </p>
2069
+ * </li>
2070
+ * <li>
2071
+ * <p>Latency: The time to complete a resolver invocation.</p>
2072
+ * </li>
2073
+ * <li>
2074
+ * <p>Cache hits: The number of cache hits during a request.</p>
2075
+ * </li>
2076
+ * <li>
2077
+ * <p>Cache misses: The number of cache misses during a request.</p>
2078
+ * </li>
2079
+ * </ul>
2080
+ * <p>These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be
2081
+ * recorded by API ID and resolver name. <code>resolverLevelMetricsBehavior</code> accepts one of these values at
2082
+ * a time:</p>
2083
+ * <ul>
2084
+ * <li>
2085
+ * <p>
2086
+ * <code>FULL_REQUEST_RESOLVER_METRICS</code>: Records and emits metric data for all resolvers in the
2087
+ * request.</p>
2088
+ * </li>
2089
+ * <li>
2090
+ * <p>
2091
+ * <code>PER_RESOLVER_METRICS</code>: Records and emits metric data for resolvers that have the
2092
+ * <code>metricConfig</code> value set to <code>ENABLED</code>.</p>
2093
+ * </li>
2094
+ * </ul>
2095
+ */
2096
+ resolverLevelMetricsBehavior: ResolverLevelMetricsBehavior | undefined;
2097
+ /**
2098
+ * @public
2099
+ * <p>Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:</p>
2100
+ * <ul>
2101
+ * <li>
2102
+ * <p>Requests: The number of invocations that occured during a request.</p>
2103
+ * </li>
2104
+ * <li>
2105
+ * <p>Latency: The time to complete a data source invocation.</p>
2106
+ * </li>
2107
+ * <li>
2108
+ * <p>Errors: The number of errors that occurred during a data source invocation.</p>
2109
+ * </li>
2110
+ * </ul>
2111
+ * <p>These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics
2112
+ * will be recorded by API ID and data source name. <code>dataSourceLevelMetricsBehavior</code> accepts one of
2113
+ * these values at a time:</p>
2114
+ * <ul>
2115
+ * <li>
2116
+ * <p>
2117
+ * <code>FULL_REQUEST_DATA_SOURCE_METRICS</code>: Records and emits metric data for all data sources
2118
+ * in the request.</p>
2119
+ * </li>
2120
+ * <li>
2121
+ * <p>
2122
+ * <code>PER_DATA_SOURCE_METRICS</code>: Records and emits metric data for data sources that have the
2123
+ * <code>metricConfig</code> value set to <code>ENABLED</code>.</p>
2124
+ * </li>
2125
+ * </ul>
2126
+ */
2127
+ dataSourceLevelMetricsBehavior: DataSourceLevelMetricsBehavior | undefined;
2128
+ /**
2129
+ * @public
2130
+ * <p> Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:</p>
2131
+ * <ul>
2132
+ * <li>
2133
+ * <p>Requests: The number of times a specified GraphQL operation was called.</p>
2134
+ * </li>
2135
+ * <li>
2136
+ * <p>GraphQL errors: The number of GraphQL errors that occurred during a specified GraphQL
2137
+ * operation.</p>
2138
+ * </li>
2139
+ * </ul>
2140
+ * <p>Metrics will be recorded by API ID and operation name. You can set the value to <code>ENABLED</code> or
2141
+ * <code>DISABLED</code>.</p>
2142
+ */
2143
+ operationLevelMetricsConfig: OperationLevelMetricsConfig | undefined;
2144
+ }
1847
2145
  /**
1848
2146
  * @public
1849
2147
  * @enum
@@ -2083,6 +2381,11 @@ export interface CreateGraphqlApiRequest {
2083
2381
  * of bounds.</p>
2084
2382
  */
2085
2383
  resolverCountLimit?: number;
2384
+ /**
2385
+ * @public
2386
+ * <p>The <code>enhancedMetricsConfig</code> object.</p>
2387
+ */
2388
+ enhancedMetricsConfig?: EnhancedMetricsConfig;
2086
2389
  }
2087
2390
  /**
2088
2391
  * @public
@@ -2219,6 +2522,11 @@ export interface GraphqlApi {
2219
2522
  * of bounds.</p>
2220
2523
  */
2221
2524
  resolverCountLimit?: number;
2525
+ /**
2526
+ * @public
2527
+ * <p>The <code>enhancedMetricsConfig</code> object.</p>
2528
+ */
2529
+ enhancedMetricsConfig?: EnhancedMetricsConfig;
2222
2530
  }
2223
2531
  /**
2224
2532
  * @public
@@ -2261,6 +2569,18 @@ export declare const ResolverKind: {
2261
2569
  * @public
2262
2570
  */
2263
2571
  export type ResolverKind = (typeof ResolverKind)[keyof typeof ResolverKind];
2572
+ /**
2573
+ * @public
2574
+ * @enum
2575
+ */
2576
+ export declare const ResolverLevelMetricsConfig: {
2577
+ readonly DISABLED: "DISABLED";
2578
+ readonly ENABLED: "ENABLED";
2579
+ };
2580
+ /**
2581
+ * @public
2582
+ */
2583
+ export type ResolverLevelMetricsConfig = (typeof ResolverLevelMetricsConfig)[keyof typeof ResolverLevelMetricsConfig];
2264
2584
  /**
2265
2585
  * @public
2266
2586
  * <p>The pipeline configuration for a resolver of kind <code>PIPELINE</code>.</p>
@@ -2361,6 +2681,17 @@ export interface CreateResolverRequest {
2361
2681
  * <code>runtime</code> is required. The <code>runtime</code> value must be <code>APPSYNC_JS</code>.</p>
2362
2682
  */
2363
2683
  code?: string;
2684
+ /**
2685
+ * @public
2686
+ * <p>Enables or disables enhanced resolver metrics for specified resolvers. Note that <code>metricsConfig</code>
2687
+ * won't be used unless the <code>resolverLevelMetricsBehavior</code> value is set to
2688
+ * <code>PER_RESOLVER_METRICS</code>. If the <code>resolverLevelMetricsBehavior</code> is set to
2689
+ * <code>FULL_REQUEST_RESOLVER_METRICS</code> instead, <code>metricsConfig</code> will be ignored. However, you
2690
+ * can still set its value.</p>
2691
+ * <p>
2692
+ * <code>metricsConfig</code> can be <code>ENABLED</code> or <code>DISABLED</code>.</p>
2693
+ */
2694
+ metricsConfig?: ResolverLevelMetricsConfig;
2364
2695
  }
2365
2696
  /**
2366
2697
  * @public
@@ -2448,6 +2779,17 @@ export interface Resolver {
2448
2779
  * <code>runtime</code> is required. The <code>runtime</code> value must be <code>APPSYNC_JS</code>.</p>
2449
2780
  */
2450
2781
  code?: string;
2782
+ /**
2783
+ * @public
2784
+ * <p>Enables or disables enhanced resolver metrics for specified resolvers. Note that <code>metricsConfig</code>
2785
+ * won't be used unless the <code>resolverLevelMetricsBehavior</code> value is set to
2786
+ * <code>PER_RESOLVER_METRICS</code>. If the <code>resolverLevelMetricsBehavior</code> is set to
2787
+ * <code>FULL_REQUEST_RESOLVER_METRICS</code> instead, <code>metricsConfig</code> will be ignored. However, you
2788
+ * can still set its value.</p>
2789
+ * <p>
2790
+ * <code>metricsConfig</code> can be <code>ENABLED</code> or <code>DISABLED</code>.</p>
2791
+ */
2792
+ metricsConfig?: ResolverLevelMetricsConfig;
2451
2793
  }
2452
2794
  /**
2453
2795
  * @public
@@ -3786,7 +4128,7 @@ export interface PutGraphqlApiEnvironmentVariablesRequest {
3786
4128
  * </ul>
3787
4129
  * <p>You can create a list of environmental variables by adding it to the <code>environmentVariables</code>
3788
4130
  * payload as a list in the format <code>\{"key1":"value1","key2":"value2", …\}</code>. Note that each call of the
3789
- * <code>PutGraphqlApiEnvironmentVariables</code> action will result in the overwriting of the existing
4131
+ * <code>PutGraphqlApiEnvironmentVariables</code> action will result in the overwriting of the existing
3790
4132
  * environmental variable list of that API. This means the existing environmental variables will be lost. To avoid
3791
4133
  * this, you must include all existing and new environmental variables in the list each time you call this
3792
4134
  * action.</p>
@@ -4066,6 +4408,23 @@ export interface UpdateApiCacheRequest {
4066
4408
  * </ul>
4067
4409
  */
4068
4410
  type: ApiCacheType | undefined;
4411
+ /**
4412
+ * @public
4413
+ * <p>Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:</p>
4414
+ * <ul>
4415
+ * <li>
4416
+ * <p>NetworkBandwidthOutAllowanceExceeded: The number of times a specified GraphQL operation was
4417
+ * called.</p>
4418
+ * </li>
4419
+ * <li>
4420
+ * <p>EngineCPUUtilization: The number of GraphQL errors that occurred during a specified GraphQL
4421
+ * operation.</p>
4422
+ * </li>
4423
+ * </ul>
4424
+ * <p>Metrics will be recorded by API ID. You can set the value to <code>ENABLED</code> or
4425
+ * <code>DISABLED</code>.</p>
4426
+ */
4427
+ healthMetricsConfig?: CacheHealthMetricsConfig;
4069
4428
  }
4070
4429
  /**
4071
4430
  * @public
@@ -4180,6 +4539,17 @@ export interface UpdateDataSourceRequest {
4180
4539
  * <p>The new Amazon EventBridge settings.</p>
4181
4540
  */
4182
4541
  eventBridgeConfig?: EventBridgeDataSourceConfig;
4542
+ /**
4543
+ * @public
4544
+ * <p>Enables or disables enhanced data source metrics for specified data sources. Note that
4545
+ * <code>metricsConfig</code> won't be used unless the <code>dataSourceLevelMetricsBehavior</code> value is set
4546
+ * to <code>PER_DATA_SOURCE_METRICS</code>. If the <code>dataSourceLevelMetricsBehavior</code> is set to
4547
+ * <code>FULL_REQUEST_DATA_SOURCE_METRICS</code> instead, <code>metricsConfig</code> will be ignored. However,
4548
+ * you can still set its value.</p>
4549
+ * <p>
4550
+ * <code>metricsConfig</code> can be <code>ENABLED</code> or <code>DISABLED</code>.</p>
4551
+ */
4552
+ metricsConfig?: DataSourceLevelMetricsConfig;
4183
4553
  }
4184
4554
  /**
4185
4555
  * @public
@@ -4389,6 +4759,11 @@ export interface UpdateGraphqlApiRequest {
4389
4759
  * of bounds.</p>
4390
4760
  */
4391
4761
  resolverCountLimit?: number;
4762
+ /**
4763
+ * @public
4764
+ * <p>The <code>enhancedMetricsConfig</code> object.</p>
4765
+ */
4766
+ enhancedMetricsConfig?: EnhancedMetricsConfig;
4392
4767
  }
4393
4768
  /**
4394
4769
  * @public
@@ -4489,6 +4864,17 @@ export interface UpdateResolverRequest {
4489
4864
  * <code>runtime</code> is required. The <code>runtime</code> value must be <code>APPSYNC_JS</code>.</p>
4490
4865
  */
4491
4866
  code?: string;
4867
+ /**
4868
+ * @public
4869
+ * <p>Enables or disables enhanced resolver metrics for specified resolvers. Note that <code>metricsConfig</code>
4870
+ * won't be used unless the <code>resolverLevelMetricsBehavior</code> value is set to
4871
+ * <code>PER_RESOLVER_METRICS</code>. If the <code>resolverLevelMetricsBehavior</code> is set to
4872
+ * <code>FULL_REQUEST_RESOLVER_METRICS</code> instead, <code>metricsConfig</code> will be ignored. However, you
4873
+ * can still set its value.</p>
4874
+ * <p>
4875
+ * <code>metricsConfig</code> can be <code>ENABLED</code> or <code>DISABLED</code>.</p>
4876
+ */
4877
+ metricsConfig?: ResolverLevelMetricsConfig;
4492
4878
  }
4493
4879
  /**
4494
4880
  * @public
@@ -57,6 +57,12 @@ export declare const ApiCachingBehavior: {
57
57
  };
58
58
  export type ApiCachingBehavior =
59
59
  (typeof ApiCachingBehavior)[keyof typeof ApiCachingBehavior];
60
+ export declare const CacheHealthMetricsConfig: {
61
+ readonly DISABLED: "DISABLED";
62
+ readonly ENABLED: "ENABLED";
63
+ };
64
+ export type CacheHealthMetricsConfig =
65
+ (typeof CacheHealthMetricsConfig)[keyof typeof CacheHealthMetricsConfig];
60
66
  export declare const ApiCacheStatus: {
61
67
  readonly AVAILABLE: "AVAILABLE";
62
68
  readonly CREATING: "CREATING";
@@ -91,6 +97,7 @@ export interface ApiCache {
91
97
  atRestEncryptionEnabled?: boolean;
92
98
  type?: ApiCacheType;
93
99
  status?: ApiCacheStatus;
100
+ healthMetricsConfig?: CacheHealthMetricsConfig;
94
101
  }
95
102
  export interface ApiKey {
96
103
  id?: string;
@@ -271,6 +278,7 @@ export interface CreateApiCacheRequest {
271
278
  atRestEncryptionEnabled?: boolean;
272
279
  apiCachingBehavior: ApiCachingBehavior | undefined;
273
280
  type: ApiCacheType | undefined;
281
+ healthMetricsConfig?: CacheHealthMetricsConfig;
274
282
  }
275
283
  export interface CreateApiCacheResponse {
276
284
  apiCache?: ApiCache;
@@ -309,6 +317,12 @@ export interface HttpDataSourceConfig {
309
317
  export interface LambdaDataSourceConfig {
310
318
  lambdaFunctionArn: string | undefined;
311
319
  }
320
+ export declare const DataSourceLevelMetricsConfig: {
321
+ readonly DISABLED: "DISABLED";
322
+ readonly ENABLED: "ENABLED";
323
+ };
324
+ export type DataSourceLevelMetricsConfig =
325
+ (typeof DataSourceLevelMetricsConfig)[keyof typeof DataSourceLevelMetricsConfig];
312
326
  export interface OpenSearchServiceDataSourceConfig {
313
327
  endpoint: string | undefined;
314
328
  awsRegion: string | undefined;
@@ -354,6 +368,7 @@ export interface CreateDataSourceRequest {
354
368
  httpConfig?: HttpDataSourceConfig;
355
369
  relationalDatabaseConfig?: RelationalDatabaseDataSourceConfig;
356
370
  eventBridgeConfig?: EventBridgeDataSourceConfig;
371
+ metricsConfig?: DataSourceLevelMetricsConfig;
357
372
  }
358
373
  export interface DataSource {
359
374
  dataSourceArn?: string;
@@ -368,6 +383,7 @@ export interface DataSource {
368
383
  httpConfig?: HttpDataSourceConfig;
369
384
  relationalDatabaseConfig?: RelationalDatabaseDataSourceConfig;
370
385
  eventBridgeConfig?: EventBridgeDataSourceConfig;
386
+ metricsConfig?: DataSourceLevelMetricsConfig;
371
387
  }
372
388
  export interface CreateDataSourceResponse {
373
389
  dataSource?: DataSource;
@@ -445,6 +461,29 @@ export declare const GraphQLApiType: {
445
461
  };
446
462
  export type GraphQLApiType =
447
463
  (typeof GraphQLApiType)[keyof typeof GraphQLApiType];
464
+ export declare const DataSourceLevelMetricsBehavior: {
465
+ readonly FULL_REQUEST_DATA_SOURCE_METRICS: "FULL_REQUEST_DATA_SOURCE_METRICS";
466
+ readonly PER_DATA_SOURCE_METRICS: "PER_DATA_SOURCE_METRICS";
467
+ };
468
+ export type DataSourceLevelMetricsBehavior =
469
+ (typeof DataSourceLevelMetricsBehavior)[keyof typeof DataSourceLevelMetricsBehavior];
470
+ export declare const OperationLevelMetricsConfig: {
471
+ readonly DISABLED: "DISABLED";
472
+ readonly ENABLED: "ENABLED";
473
+ };
474
+ export type OperationLevelMetricsConfig =
475
+ (typeof OperationLevelMetricsConfig)[keyof typeof OperationLevelMetricsConfig];
476
+ export declare const ResolverLevelMetricsBehavior: {
477
+ readonly FULL_REQUEST_RESOLVER_METRICS: "FULL_REQUEST_RESOLVER_METRICS";
478
+ readonly PER_RESOLVER_METRICS: "PER_RESOLVER_METRICS";
479
+ };
480
+ export type ResolverLevelMetricsBehavior =
481
+ (typeof ResolverLevelMetricsBehavior)[keyof typeof ResolverLevelMetricsBehavior];
482
+ export interface EnhancedMetricsConfig {
483
+ resolverLevelMetricsBehavior: ResolverLevelMetricsBehavior | undefined;
484
+ dataSourceLevelMetricsBehavior: DataSourceLevelMetricsBehavior | undefined;
485
+ operationLevelMetricsConfig: OperationLevelMetricsConfig | undefined;
486
+ }
448
487
  export declare const GraphQLApiIntrospectionConfig: {
449
488
  readonly DISABLED: "DISABLED";
450
489
  readonly ENABLED: "ENABLED";
@@ -496,6 +535,7 @@ export interface CreateGraphqlApiRequest {
496
535
  introspectionConfig?: GraphQLApiIntrospectionConfig;
497
536
  queryDepthLimit?: number;
498
537
  resolverCountLimit?: number;
538
+ enhancedMetricsConfig?: EnhancedMetricsConfig;
499
539
  }
500
540
  export interface GraphqlApi {
501
541
  name?: string;
@@ -520,6 +560,7 @@ export interface GraphqlApi {
520
560
  introspectionConfig?: GraphQLApiIntrospectionConfig;
521
561
  queryDepthLimit?: number;
522
562
  resolverCountLimit?: number;
563
+ enhancedMetricsConfig?: EnhancedMetricsConfig;
523
564
  }
524
565
  export interface CreateGraphqlApiResponse {
525
566
  graphqlApi?: GraphqlApi;
@@ -533,6 +574,12 @@ export declare const ResolverKind: {
533
574
  readonly UNIT: "UNIT";
534
575
  };
535
576
  export type ResolverKind = (typeof ResolverKind)[keyof typeof ResolverKind];
577
+ export declare const ResolverLevelMetricsConfig: {
578
+ readonly DISABLED: "DISABLED";
579
+ readonly ENABLED: "ENABLED";
580
+ };
581
+ export type ResolverLevelMetricsConfig =
582
+ (typeof ResolverLevelMetricsConfig)[keyof typeof ResolverLevelMetricsConfig];
536
583
  export interface PipelineConfig {
537
584
  functions?: string[];
538
585
  }
@@ -550,6 +597,7 @@ export interface CreateResolverRequest {
550
597
  maxBatchSize?: number;
551
598
  runtime?: AppSyncRuntime;
552
599
  code?: string;
600
+ metricsConfig?: ResolverLevelMetricsConfig;
553
601
  }
554
602
  export interface Resolver {
555
603
  typeName?: string;
@@ -565,6 +613,7 @@ export interface Resolver {
565
613
  maxBatchSize?: number;
566
614
  runtime?: AppSyncRuntime;
567
615
  code?: string;
616
+ metricsConfig?: ResolverLevelMetricsConfig;
568
617
  }
569
618
  export interface CreateResolverResponse {
570
619
  resolver?: Resolver;
@@ -961,6 +1010,7 @@ export interface UpdateApiCacheRequest {
961
1010
  ttl: number | undefined;
962
1011
  apiCachingBehavior: ApiCachingBehavior | undefined;
963
1012
  type: ApiCacheType | undefined;
1013
+ healthMetricsConfig?: CacheHealthMetricsConfig;
964
1014
  }
965
1015
  export interface UpdateApiCacheResponse {
966
1016
  apiCache?: ApiCache;
@@ -987,6 +1037,7 @@ export interface UpdateDataSourceRequest {
987
1037
  httpConfig?: HttpDataSourceConfig;
988
1038
  relationalDatabaseConfig?: RelationalDatabaseDataSourceConfig;
989
1039
  eventBridgeConfig?: EventBridgeDataSourceConfig;
1040
+ metricsConfig?: DataSourceLevelMetricsConfig;
990
1041
  }
991
1042
  export interface UpdateDataSourceResponse {
992
1043
  dataSource?: DataSource;
@@ -1030,6 +1081,7 @@ export interface UpdateGraphqlApiRequest {
1030
1081
  introspectionConfig?: GraphQLApiIntrospectionConfig;
1031
1082
  queryDepthLimit?: number;
1032
1083
  resolverCountLimit?: number;
1084
+ enhancedMetricsConfig?: EnhancedMetricsConfig;
1033
1085
  }
1034
1086
  export interface UpdateGraphqlApiResponse {
1035
1087
  graphqlApi?: GraphqlApi;
@@ -1048,6 +1100,7 @@ export interface UpdateResolverRequest {
1048
1100
  maxBatchSize?: number;
1049
1101
  runtime?: AppSyncRuntime;
1050
1102
  code?: string;
1103
+ metricsConfig?: ResolverLevelMetricsConfig;
1051
1104
  }
1052
1105
  export interface UpdateResolverResponse {
1053
1106
  resolver?: Resolver;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-appsync",
3
3
  "description": "AWS SDK for JavaScript Appsync Client for Node.js, Browser and React Native",
4
- "version": "3.509.0",
4
+ "version": "3.512.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-appsync",
@@ -20,19 +20,19 @@
20
20
  "dependencies": {
21
21
  "@aws-crypto/sha256-browser": "3.0.0",
22
22
  "@aws-crypto/sha256-js": "3.0.0",
23
- "@aws-sdk/client-sts": "3.507.0",
24
- "@aws-sdk/core": "3.496.0",
25
- "@aws-sdk/credential-provider-node": "3.509.0",
26
- "@aws-sdk/middleware-host-header": "3.502.0",
27
- "@aws-sdk/middleware-logger": "3.502.0",
28
- "@aws-sdk/middleware-recursion-detection": "3.502.0",
29
- "@aws-sdk/middleware-signing": "3.502.0",
30
- "@aws-sdk/middleware-user-agent": "3.502.0",
31
- "@aws-sdk/region-config-resolver": "3.502.0",
32
- "@aws-sdk/types": "3.502.0",
33
- "@aws-sdk/util-endpoints": "3.502.0",
34
- "@aws-sdk/util-user-agent-browser": "3.502.0",
35
- "@aws-sdk/util-user-agent-node": "3.502.0",
23
+ "@aws-sdk/client-sts": "3.511.0",
24
+ "@aws-sdk/core": "3.511.0",
25
+ "@aws-sdk/credential-provider-node": "3.511.0",
26
+ "@aws-sdk/middleware-host-header": "3.511.0",
27
+ "@aws-sdk/middleware-logger": "3.511.0",
28
+ "@aws-sdk/middleware-recursion-detection": "3.511.0",
29
+ "@aws-sdk/middleware-signing": "3.511.0",
30
+ "@aws-sdk/middleware-user-agent": "3.511.0",
31
+ "@aws-sdk/region-config-resolver": "3.511.0",
32
+ "@aws-sdk/types": "3.511.0",
33
+ "@aws-sdk/util-endpoints": "3.511.0",
34
+ "@aws-sdk/util-user-agent-browser": "3.511.0",
35
+ "@aws-sdk/util-user-agent-node": "3.511.0",
36
36
  "@smithy/config-resolver": "^2.1.1",
37
37
  "@smithy/core": "^1.3.1",
38
38
  "@smithy/fetch-http-handler": "^2.4.1",