Class EnhancedMetricsConfig
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<EnhancedMetricsConfig.Builder,
EnhancedMetricsConfig>
Enables and controls the enhanced metrics feature. Enhanced metrics emit granular data on API usage and performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data is sent to your CloudWatch account, and you can configure the types of data that will be sent.
Enhanced metrics can be configured at the resolver, data source, and operation levels.
EnhancedMetricsConfig
contains three required parameters, each controlling one of these categories:
-
resolverLevelMetricsBehavior
: Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:-
GraphQL errors: The number of GraphQL errors that occurred.
-
Requests: The number of invocations that occurred during a request.
-
Latency: The time to complete a resolver invocation.
-
Cache hits: The number of cache hits during a request.
-
Cache misses: The number of cache misses during a request.
These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be recorded by API ID and resolver name.
resolverLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_RESOLVER_METRICS
: Records and emits metric data for all resolvers in the request. -
PER_RESOLVER_METRICS
: Records and emits metric data for resolvers that have themetricsConfig
value set toENABLED
.
-
-
dataSourceLevelMetricsBehavior
: Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:-
Requests: The number of invocations that occured during a request.
-
Latency: The time to complete a data source invocation.
-
Errors: The number of errors that occurred during a data source invocation.
These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics will be recorded by API ID and data source name.
dataSourceLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_DATA_SOURCE_METRICS
: Records and emits metric data for all data sources in the request. -
PER_DATA_SOURCE_METRICS
: Records and emits metric data for data sources that have themetricsConfig
value set toENABLED
.
-
-
operationLevelMetricsConfig
: Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:-
Requests: The number of times a specified GraphQL operation was called.
-
GraphQL errors: The number of GraphQL errors that occurred during a specified GraphQL operation.
Metrics will be recorded by API ID and operation name. You can set the value to
ENABLED
orDISABLED
. -
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionbuilder()
Controls how data source metrics will be emitted to CloudWatch.final String
Controls how data source metrics will be emitted to CloudWatch.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final int
hashCode()
Controls how operation metrics will be emitted to CloudWatch.final String
Controls how operation metrics will be emitted to CloudWatch.Controls how resolver metrics will be emitted to CloudWatch.final String
Controls how resolver metrics will be emitted to CloudWatch.static Class
<? extends EnhancedMetricsConfig.Builder> Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
resolverLevelMetricsBehavior
Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:
-
GraphQL errors: The number of GraphQL errors that occurred.
-
Requests: The number of invocations that occurred during a request.
-
Latency: The time to complete a resolver invocation.
-
Cache hits: The number of cache hits during a request.
-
Cache misses: The number of cache misses during a request.
These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be recorded by API ID and resolver name.
resolverLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_RESOLVER_METRICS
: Records and emits metric data for all resolvers in the request. -
PER_RESOLVER_METRICS
: Records and emits metric data for resolvers that have themetricsConfig
value set toENABLED
.
If the service returns an enum value that is not available in the current SDK version,
resolverLevelMetricsBehavior
will returnResolverLevelMetricsBehavior.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromresolverLevelMetricsBehaviorAsString()
.- Returns:
- Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:
-
GraphQL errors: The number of GraphQL errors that occurred.
-
Requests: The number of invocations that occurred during a request.
-
Latency: The time to complete a resolver invocation.
-
Cache hits: The number of cache hits during a request.
-
Cache misses: The number of cache misses during a request.
These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be recorded by API ID and resolver name.
resolverLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_RESOLVER_METRICS
: Records and emits metric data for all resolvers in the request. -
PER_RESOLVER_METRICS
: Records and emits metric data for resolvers that have themetricsConfig
value set toENABLED
.
-
- See Also:
-
-
resolverLevelMetricsBehaviorAsString
Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:
-
GraphQL errors: The number of GraphQL errors that occurred.
-
Requests: The number of invocations that occurred during a request.
-
Latency: The time to complete a resolver invocation.
-
Cache hits: The number of cache hits during a request.
-
Cache misses: The number of cache misses during a request.
These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be recorded by API ID and resolver name.
resolverLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_RESOLVER_METRICS
: Records and emits metric data for all resolvers in the request. -
PER_RESOLVER_METRICS
: Records and emits metric data for resolvers that have themetricsConfig
value set toENABLED
.
If the service returns an enum value that is not available in the current SDK version,
resolverLevelMetricsBehavior
will returnResolverLevelMetricsBehavior.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromresolverLevelMetricsBehaviorAsString()
.- Returns:
- Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:
-
GraphQL errors: The number of GraphQL errors that occurred.
-
Requests: The number of invocations that occurred during a request.
-
Latency: The time to complete a resolver invocation.
-
Cache hits: The number of cache hits during a request.
-
Cache misses: The number of cache misses during a request.
These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be recorded by API ID and resolver name.
resolverLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_RESOLVER_METRICS
: Records and emits metric data for all resolvers in the request. -
PER_RESOLVER_METRICS
: Records and emits metric data for resolvers that have themetricsConfig
value set toENABLED
.
-
- See Also:
-
-
dataSourceLevelMetricsBehavior
Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:
-
Requests: The number of invocations that occured during a request.
-
Latency: The time to complete a data source invocation.
-
Errors: The number of errors that occurred during a data source invocation.
These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics will be recorded by API ID and data source name.
dataSourceLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_DATA_SOURCE_METRICS
: Records and emits metric data for all data sources in the request. -
PER_DATA_SOURCE_METRICS
: Records and emits metric data for data sources that have themetricsConfig
value set toENABLED
.
If the service returns an enum value that is not available in the current SDK version,
dataSourceLevelMetricsBehavior
will returnDataSourceLevelMetricsBehavior.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromdataSourceLevelMetricsBehaviorAsString()
.- Returns:
- Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:
-
Requests: The number of invocations that occured during a request.
-
Latency: The time to complete a data source invocation.
-
Errors: The number of errors that occurred during a data source invocation.
These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics will be recorded by API ID and data source name.
dataSourceLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_DATA_SOURCE_METRICS
: Records and emits metric data for all data sources in the request. -
PER_DATA_SOURCE_METRICS
: Records and emits metric data for data sources that have themetricsConfig
value set toENABLED
.
-
- See Also:
-
-
dataSourceLevelMetricsBehaviorAsString
Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:
-
Requests: The number of invocations that occured during a request.
-
Latency: The time to complete a data source invocation.
-
Errors: The number of errors that occurred during a data source invocation.
These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics will be recorded by API ID and data source name.
dataSourceLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_DATA_SOURCE_METRICS
: Records and emits metric data for all data sources in the request. -
PER_DATA_SOURCE_METRICS
: Records and emits metric data for data sources that have themetricsConfig
value set toENABLED
.
If the service returns an enum value that is not available in the current SDK version,
dataSourceLevelMetricsBehavior
will returnDataSourceLevelMetricsBehavior.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromdataSourceLevelMetricsBehaviorAsString()
.- Returns:
- Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:
-
Requests: The number of invocations that occured during a request.
-
Latency: The time to complete a data source invocation.
-
Errors: The number of errors that occurred during a data source invocation.
These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics will be recorded by API ID and data source name.
dataSourceLevelMetricsBehavior
accepts one of these values at a time:-
FULL_REQUEST_DATA_SOURCE_METRICS
: Records and emits metric data for all data sources in the request. -
PER_DATA_SOURCE_METRICS
: Records and emits metric data for data sources that have themetricsConfig
value set toENABLED
.
-
- See Also:
-
-
operationLevelMetricsConfig
Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:
-
Requests: The number of times a specified GraphQL operation was called.
-
GraphQL errors: The number of GraphQL errors that occurred during a specified GraphQL operation.
Metrics will be recorded by API ID and operation name. You can set the value to
ENABLED
orDISABLED
.If the service returns an enum value that is not available in the current SDK version,
operationLevelMetricsConfig
will returnOperationLevelMetricsConfig.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromoperationLevelMetricsConfigAsString()
.- Returns:
- Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:
-
Requests: The number of times a specified GraphQL operation was called.
-
GraphQL errors: The number of GraphQL errors that occurred during a specified GraphQL operation.
Metrics will be recorded by API ID and operation name. You can set the value to
ENABLED
orDISABLED
. -
- See Also:
-
-
operationLevelMetricsConfigAsString
Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:
-
Requests: The number of times a specified GraphQL operation was called.
-
GraphQL errors: The number of GraphQL errors that occurred during a specified GraphQL operation.
Metrics will be recorded by API ID and operation name. You can set the value to
ENABLED
orDISABLED
.If the service returns an enum value that is not available in the current SDK version,
operationLevelMetricsConfig
will returnOperationLevelMetricsConfig.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromoperationLevelMetricsConfigAsString()
.- Returns:
- Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:
-
Requests: The number of times a specified GraphQL operation was called.
-
GraphQL errors: The number of GraphQL errors that occurred during a specified GraphQL operation.
Metrics will be recorded by API ID and operation name. You can set the value to
ENABLED
orDISABLED
. -
- See Also:
-
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<EnhancedMetricsConfig.Builder,
EnhancedMetricsConfig> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode() -
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value. -
getValueForField
-
sdkFields
-