Class: AWSCDK::AppSync::CfnGraphQLAPI::EnhancedMetricsConfigProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
app_sync/cfn_graph_qlapi.rb

Overview

Describes an enhanced metrics configuration.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(data_source_level_metrics_behavior:, operation_level_metrics_config:, resolver_level_metrics_behavior:) ⇒ EnhancedMetricsConfigProperty

Returns a new instance of EnhancedMetricsConfigProperty.

Parameters:

  • data_source_level_metrics_behavior (String)

    Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:.

  • operation_level_metrics_config (String)

    Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:.

  • resolver_level_metrics_behavior (String)

    Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:.



917
918
919
920
921
922
923
924
# File 'app_sync/cfn_graph_qlapi.rb', line 917

def initialize(data_source_level_metrics_behavior:, operation_level_metrics_config:, resolver_level_metrics_behavior:)
  @data_source_level_metrics_behavior = data_source_level_metrics_behavior
  Jsii::Type.check_type(@data_source_level_metrics_behavior, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dataSourceLevelMetricsBehavior")
  @operation_level_metrics_config = operation_level_metrics_config
  Jsii::Type.check_type(@operation_level_metrics_config, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "operationLevelMetricsConfig")
  @resolver_level_metrics_behavior = resolver_level_metrics_behavior
  Jsii::Type.check_type(@resolver_level_metrics_behavior, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "resolverLevelMetricsBehavior")
end

Instance Attribute Details

#data_source_level_metrics_behaviorString (readonly)

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. data_source_level_metrics_behavior 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 the MetricsConfig value set to ENABLED .


939
940
941
# File 'app_sync/cfn_graph_qlapi.rb', line 939

def data_source_level_metrics_behavior
  @data_source_level_metrics_behavior
end

#operation_level_metrics_configString (readonly)

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 or DISABLED .



949
950
951
# File 'app_sync/cfn_graph_qlapi.rb', line 949

def operation_level_metrics_config
  @operation_level_metrics_config
end

#resolver_level_metrics_behaviorString (readonly)

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. resolver_level_metrics_behavior 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 the MetricsConfig value set to ENABLED .


965
966
967
# File 'app_sync/cfn_graph_qlapi.rb', line 965

def resolver_level_metrics_behavior
  @resolver_level_metrics_behavior
end

Class Method Details

.jsii_propertiesObject



967
968
969
970
971
972
973
# File 'app_sync/cfn_graph_qlapi.rb', line 967

def self.jsii_properties
  {
    :data_source_level_metrics_behavior => "dataSourceLevelMetricsBehavior",
    :operation_level_metrics_config => "operationLevelMetricsConfig",
    :resolver_level_metrics_behavior => "resolverLevelMetricsBehavior",
  }
end

Instance Method Details

#to_jsiiObject



975
976
977
978
979
980
981
982
983
# File 'app_sync/cfn_graph_qlapi.rb', line 975

def to_jsii
  result = {}
  result.merge!({
    "dataSourceLevelMetricsBehavior" => @data_source_level_metrics_behavior,
    "operationLevelMetricsConfig" => @operation_level_metrics_config,
    "resolverLevelMetricsBehavior" => @resolver_level_metrics_behavior,
  })
  result.compact
end