Class: AWSCDK::S3::CfnStorageLens::AccountLevelProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
s3/cfn_storage_lens.rb

Overview

This resource contains the details of the account-level metrics for Amazon S3 Storage Lens.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bucket_level:, activity_metrics: nil, advanced_cost_optimization_metrics: nil, advanced_data_protection_metrics: nil, advanced_performance_metrics: nil, detailed_status_codes_metrics: nil, storage_lens_group_level: nil) ⇒ AccountLevelProperty

Returns a new instance of AccountLevelProperty.

Parameters:



532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
# File 's3/cfn_storage_lens.rb', line 532

def initialize(bucket_level:, activity_metrics: nil, advanced_cost_optimization_metrics: nil, advanced_data_protection_metrics: nil, advanced_performance_metrics: nil, detailed_status_codes_metrics: nil, storage_lens_group_level: nil)
  @bucket_level = bucket_level.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::BucketLevelProperty.new(**bucket_level.transform_keys(&:to_sym)) : bucket_level
  Jsii::Type.check_type(@bucket_level, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5CdWNrZXRMZXZlbFByb3BlcnR5In1dfX0=")), "bucketLevel")
  @activity_metrics = activity_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::ActivityMetricsProperty.new(**activity_metrics.transform_keys(&:to_sym)) : activity_metrics
  Jsii::Type.check_type(@activity_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BY3Rpdml0eU1ldHJpY3NQcm9wZXJ0eSJ9XX19")), "activityMetrics") unless @activity_metrics.nil?
  @advanced_cost_optimization_metrics = advanced_cost_optimization_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::AdvancedCostOptimizationMetricsProperty.new(**advanced_cost_optimization_metrics.transform_keys(&:to_sym)) : advanced_cost_optimization_metrics
  Jsii::Type.check_type(@advanced_cost_optimization_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BZHZhbmNlZENvc3RPcHRpbWl6YXRpb25NZXRyaWNzUHJvcGVydHkifV19fQ==")), "advancedCostOptimizationMetrics") unless @advanced_cost_optimization_metrics.nil?
  @advanced_data_protection_metrics = advanced_data_protection_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::AdvancedDataProtectionMetricsProperty.new(**advanced_data_protection_metrics.transform_keys(&:to_sym)) : advanced_data_protection_metrics
  Jsii::Type.check_type(@advanced_data_protection_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BZHZhbmNlZERhdGFQcm90ZWN0aW9uTWV0cmljc1Byb3BlcnR5In1dfX0=")), "advancedDataProtectionMetrics") unless @advanced_data_protection_metrics.nil?
  @advanced_performance_metrics = advanced_performance_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::AdvancedPerformanceMetricsProperty.new(**advanced_performance_metrics.transform_keys(&:to_sym)) : advanced_performance_metrics
  Jsii::Type.check_type(@advanced_performance_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5BZHZhbmNlZFBlcmZvcm1hbmNlTWV0cmljc1Byb3BlcnR5In1dfX0=")), "advancedPerformanceMetrics") unless @advanced_performance_metrics.nil?
  @detailed_status_codes_metrics = detailed_status_codes_metrics.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::DetailedStatusCodesMetricsProperty.new(**detailed_status_codes_metrics.transform_keys(&:to_sym)) : detailed_status_codes_metrics
  Jsii::Type.check_type(@detailed_status_codes_metrics, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5EZXRhaWxlZFN0YXR1c0NvZGVzTWV0cmljc1Byb3BlcnR5In1dfX0=")), "detailedStatusCodesMetrics") unless @detailed_status_codes_metrics.nil?
  @storage_lens_group_level = storage_lens_group_level.is_a?(Hash) ? ::AWSCDK::S3::CfnStorageLens::StorageLensGroupLevelProperty.new(**storage_lens_group_level.transform_keys(&:to_sym)) : storage_lens_group_level
  Jsii::Type.check_type(@storage_lens_group_level, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zMy5DZm5TdG9yYWdlTGVucy5TdG9yYWdlTGVuc0dyb3VwTGV2ZWxQcm9wZXJ0eSJ9XX19")), "storageLensGroupLevel") unless @storage_lens_group_level.nil?
end

Instance Attribute Details

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

This property contains the details of account-level activity metrics for S3 Storage Lens.



560
561
562
# File 's3/cfn_storage_lens.rb', line 560

def activity_metrics
  @activity_metrics
end

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

This property contains the details of account-level advanced cost optimization metrics for S3 Storage Lens.



565
566
567
# File 's3/cfn_storage_lens.rb', line 565

def advanced_cost_optimization_metrics
  @advanced_cost_optimization_metrics
end

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

This property contains the details of account-level advanced data protection metrics for S3 Storage Lens.



570
571
572
# File 's3/cfn_storage_lens.rb', line 570

def advanced_data_protection_metrics
  @advanced_data_protection_metrics
end

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

This property contains the account-level details for S3 Storage Lens advanced performance metrics.



575
576
577
# File 's3/cfn_storage_lens.rb', line 575

def advanced_performance_metrics
  @advanced_performance_metrics
end

#bucket_levelAWSCDK::IResolvable, AWSCDK::S3::CfnStorageLens::BucketLevelProperty (readonly)

This property contains the details of the account-level bucket-level configurations for Amazon S3 Storage Lens.

To enable bucket-level configurations, make sure to also set the same metrics at the account level.



555
556
557
# File 's3/cfn_storage_lens.rb', line 555

def bucket_level
  @bucket_level
end

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

This property contains the details of account-level detailed status code metrics for S3 Storage Lens.



580
581
582
# File 's3/cfn_storage_lens.rb', line 580

def detailed_status_codes_metrics
  @detailed_status_codes_metrics
end

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

This property determines the scope of Storage Lens group data that is displayed in the Storage Lens dashboard.



585
586
587
# File 's3/cfn_storage_lens.rb', line 585

def storage_lens_group_level
  @storage_lens_group_level
end

Class Method Details

.jsii_propertiesObject



587
588
589
590
591
592
593
594
595
596
597
# File 's3/cfn_storage_lens.rb', line 587

def self.jsii_properties
  {
    :bucket_level => "bucketLevel",
    :activity_metrics => "activityMetrics",
    :advanced_cost_optimization_metrics => "advancedCostOptimizationMetrics",
    :advanced_data_protection_metrics => "advancedDataProtectionMetrics",
    :advanced_performance_metrics => "advancedPerformanceMetrics",
    :detailed_status_codes_metrics => "detailedStatusCodesMetrics",
    :storage_lens_group_level => "storageLensGroupLevel",
  }
end

Instance Method Details

#to_jsiiObject



599
600
601
602
603
604
605
606
607
608
609
610
611
# File 's3/cfn_storage_lens.rb', line 599

def to_jsii
  result = {}
  result.merge!({
    "bucketLevel" => @bucket_level,
    "activityMetrics" => @activity_metrics,
    "advancedCostOptimizationMetrics" => @advanced_cost_optimization_metrics,
    "advancedDataProtectionMetrics" => @advanced_data_protection_metrics,
    "advancedPerformanceMetrics" => @advanced_performance_metrics,
    "detailedStatusCodesMetrics" => @detailed_status_codes_metrics,
    "storageLensGroupLevel" => @storage_lens_group_level,
  })
  result.compact
end