Class: AWSCDK::EMRServerless::CfnApplication::CloudWatchLoggingConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
emr_serverless/cfn_application.rb

Overview

The Amazon CloudWatch configuration for monitoring logs.

You can configure your jobs to send log information to CloudWatch.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(enabled: nil, encryption_key_arn: nil, log_group_name: nil, log_stream_name_prefix: nil, log_type_map: nil) ⇒ CloudWatchLoggingConfigurationProperty

Returns a new instance of CloudWatchLoggingConfigurationProperty.

Parameters:

  • enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    Enables CloudWatch logging.

  • encryption_key_arn (String, nil) (defaults to: nil)

    The AWS Key Management Service (KMS) key ARN to encrypt the logs that you store in CloudWatch Logs.

  • log_group_name (String, nil) (defaults to: nil)

    The name of the log group in Amazon CloudWatch Logs where you want to publish your logs.

  • log_stream_name_prefix (String, nil) (defaults to: nil)

    Prefix for the CloudWatch log stream name.

  • log_type_map (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::EMRServerless::CfnApplication::LogTypeMapKeyValuePairProperty>, nil) (defaults to: nil)

    The specific log-streams which need to be uploaded to CloudWatch.



858
859
860
861
862
863
864
865
866
867
868
869
# File 'emr_serverless/cfn_application.rb', line 858

def initialize(enabled: nil, encryption_key_arn: nil, log_group_name: nil, log_stream_name_prefix: nil, log_type_map: nil)
  @enabled = enabled
  Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabled") unless @enabled.nil?
  @encryption_key_arn = encryption_key_arn
  Jsii::Type.check_type(@encryption_key_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "encryptionKeyArn") unless @encryption_key_arn.nil?
  @log_group_name = log_group_name
  Jsii::Type.check_type(@log_group_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "logGroupName") unless @log_group_name.nil?
  @log_stream_name_prefix = log_stream_name_prefix
  Jsii::Type.check_type(@log_stream_name_prefix, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "logStreamNamePrefix") unless @log_stream_name_prefix.nil?
  @log_type_map = log_type_map
  Jsii::Type.check_type(@log_type_map, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfZW1yc2VydmVybGVzcy5DZm5BcHBsaWNhdGlvbi5Mb2dUeXBlTWFwS2V5VmFsdWVQYWlyUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "logTypeMap") unless @log_type_map.nil?
end

Instance Attribute Details

#enabledBoolean, ... (readonly)

Note:

Default: - false

Enables CloudWatch logging.



876
877
878
# File 'emr_serverless/cfn_application.rb', line 876

def enabled
  @enabled
end

#encryption_key_arnString? (readonly)

The AWS Key Management Service (KMS) key ARN to encrypt the logs that you store in CloudWatch Logs.



881
882
883
# File 'emr_serverless/cfn_application.rb', line 881

def encryption_key_arn
  @encryption_key_arn
end

#log_group_nameString? (readonly)

The name of the log group in Amazon CloudWatch Logs where you want to publish your logs.



886
887
888
# File 'emr_serverless/cfn_application.rb', line 886

def log_group_name
  @log_group_name
end

#log_stream_name_prefixString? (readonly)

Prefix for the CloudWatch log stream name.



891
892
893
# File 'emr_serverless/cfn_application.rb', line 891

def log_stream_name_prefix
  @log_stream_name_prefix
end

#log_type_mapAWSCDK::IResolvable, ... (readonly)

The specific log-streams which need to be uploaded to CloudWatch.



896
897
898
# File 'emr_serverless/cfn_application.rb', line 896

def log_type_map
  @log_type_map
end

Class Method Details

.jsii_propertiesObject



898
899
900
901
902
903
904
905
906
# File 'emr_serverless/cfn_application.rb', line 898

def self.jsii_properties
  {
    :enabled => "enabled",
    :encryption_key_arn => "encryptionKeyArn",
    :log_group_name => "logGroupName",
    :log_stream_name_prefix => "logStreamNamePrefix",
    :log_type_map => "logTypeMap",
  }
end

Instance Method Details

#to_jsiiObject



908
909
910
911
912
913
914
915
916
917
918
# File 'emr_serverless/cfn_application.rb', line 908

def to_jsii
  result = {}
  result.merge!({
    "enabled" => @enabled,
    "encryptionKeyArn" => @encryption_key_arn,
    "logGroupName" => @log_group_name,
    "logStreamNamePrefix" => @log_stream_name_prefix,
    "logTypeMap" => @log_type_map,
  })
  result.compact
end