Class: AWSCDK::AIOps::CfnInvestigationGroupProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::AIOps::CfnInvestigationGroupProps
- Defined in:
- ai_ops/cfn_investigation_group_props.rb
Overview
Properties for defining a CfnInvestigationGroup.
Instance Attribute Summary collapse
-
#chatbot_notification_channels ⇒ AWSCDK::IResolvable, ...
readonly
Use this property to integrate CloudWatch investigations with chat applications.
-
#cross_account_configurations ⇒ AWSCDK::IResolvable, ...
readonly
List of
sourceRoleArnvalues that have been configured for cross-account access. -
#encryption_config ⇒ AWSCDK::IResolvable, ...
readonly
Specifies the customer managed AWS key that the investigation group uses to encrypt data, if there is one.
-
#investigation_group_policy ⇒ String?
readonly
Returns the JSON of the IAM resource policy associated with the specified investigation group in a string.
-
#is_cloud_trail_event_history_enabled ⇒ Boolean, ...
readonly
Specify
trueto enable CloudWatch investigations to have access to change events that are recorded by CloudTrail. -
#name ⇒ String
readonly
Specify either the name or the ARN of the investigation group that you want to view.
-
#retention_in_days ⇒ Numeric?
readonly
Specifies how long that investigation data is kept.
-
#role_arn ⇒ String?
readonly
The ARN of the IAM role that the investigation group uses for permissions to gather data.
-
#tag_key_boundaries ⇒ Array<String>?
readonly
Displays the custom tag keys for custom applications in your system that you have specified in the investigation group.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The list of key-value pairs to associate with the resource.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(name:, chatbot_notification_channels: nil, cross_account_configurations: nil, encryption_config: nil, investigation_group_policy: nil, is_cloud_trail_event_history_enabled: nil, retention_in_days: nil, role_arn: nil, tag_key_boundaries: nil, tags: nil) ⇒ CfnInvestigationGroupProps
constructor
A new instance of CfnInvestigationGroupProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(name:, chatbot_notification_channels: nil, cross_account_configurations: nil, encryption_config: nil, investigation_group_policy: nil, is_cloud_trail_event_history_enabled: nil, retention_in_days: nil, role_arn: nil, tag_key_boundaries: nil, tags: nil) ⇒ CfnInvestigationGroupProps
Returns a new instance of CfnInvestigationGroupProps.
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 19 def initialize(name:, chatbot_notification_channels: nil, cross_account_configurations: nil, encryption_config: nil, investigation_group_policy: nil, is_cloud_trail_event_history_enabled: nil, retention_in_days: nil, role_arn: nil, tag_key_boundaries: nil, tags: nil) @name = name Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") @chatbot_notification_channels = chatbot_notification_channels Jsii::Type.check_type(@chatbot_notification_channels, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYWlvcHMuQ2ZuSW52ZXN0aWdhdGlvbkdyb3VwLkNoYXRib3ROb3RpZmljYXRpb25DaGFubmVsUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "chatbotNotificationChannels") unless @chatbot_notification_channels.nil? @cross_account_configurations = cross_account_configurations Jsii::Type.check_type(@cross_account_configurations, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYWlvcHMuQ2ZuSW52ZXN0aWdhdGlvbkdyb3VwLkNyb3NzQWNjb3VudENvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "crossAccountConfigurations") unless @cross_account_configurations.nil? @encryption_config = encryption_config.is_a?(Hash) ? ::AWSCDK::AIOps::CfnInvestigationGroup::EncryptionConfigMapProperty.new(**encryption_config.transform_keys(&:to_sym)) : encryption_config Jsii::Type.check_type(@encryption_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19haW9wcy5DZm5JbnZlc3RpZ2F0aW9uR3JvdXAuRW5jcnlwdGlvbkNvbmZpZ01hcFByb3BlcnR5In1dfX0=")), "encryptionConfig") unless @encryption_config.nil? @investigation_group_policy = investigation_group_policy Jsii::Type.check_type(@investigation_group_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "investigationGroupPolicy") unless @investigation_group_policy.nil? @is_cloud_trail_event_history_enabled = is_cloud_trail_event_history_enabled Jsii::Type.check_type(@is_cloud_trail_event_history_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "isCloudTrailEventHistoryEnabled") unless @is_cloud_trail_event_history_enabled.nil? @retention_in_days = retention_in_days Jsii::Type.check_type(@retention_in_days, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "retentionInDays") unless @retention_in_days.nil? @role_arn = role_arn Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn") unless @role_arn.nil? @tag_key_boundaries = tag_key_boundaries Jsii::Type.check_type(@tag_key_boundaries, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tagKeyBoundaries") unless @tag_key_boundaries.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#chatbot_notification_channels ⇒ AWSCDK::IResolvable, ... (readonly)
Use this property to integrate CloudWatch investigations with chat applications.
This property is an array. For the first string, specify the ARN of an Amazon topic. For the array of strings, specify the ARNs of one or more chat applications configurations that you want to associate with that topic. For more information about these configuration ARNs, see Getting started with Amazon Q in chat applications and Resource type defined by AWS Chatbot .
55 56 57 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 55 def chatbot_notification_channels @chatbot_notification_channels end |
#cross_account_configurations ⇒ AWSCDK::IResolvable, ... (readonly)
List of sourceRoleArn values that have been configured for cross-account access.
60 61 62 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 60 def cross_account_configurations @cross_account_configurations end |
#encryption_config ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies the customer managed AWS key that the investigation group uses to encrypt data, if there is one.
If not, the investigation group uses an AWS key to encrypt the data.
67 68 69 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 67 def encryption_config @encryption_config end |
#investigation_group_policy ⇒ String? (readonly)
Returns the JSON of the IAM resource policy associated with the specified investigation group in a string.
For example, {\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"aiops.alarms.cloudwatch.amazonaws.com\"},\"Action\":[\"aiops:CreateInvestigation\",\"aiops:CreateInvestigationEvent\"],\"Resource\":\"*\",\"Condition\":{\"StringEquals\":{\"aws:SourceAccount\":\"111122223333\"},\"ArnLike\":{\"aws:SourceArn\":\"arn:aws:cloudwatch:us-east-1:111122223333:alarm:*\"}}}]} .
74 75 76 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 74 def investigation_group_policy @investigation_group_policy end |
#is_cloud_trail_event_history_enabled ⇒ Boolean, ... (readonly)
Specify true to enable CloudWatch investigations to have access to change events that are recorded by CloudTrail.
The default is true .
81 82 83 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 81 def is_cloud_trail_event_history_enabled @is_cloud_trail_event_history_enabled end |
#name ⇒ String (readonly)
Specify either the name or the ARN of the investigation group that you want to view.
This is used to set the name of the investigation group.
48 49 50 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 48 def name @name end |
#retention_in_days ⇒ Numeric? (readonly)
Specifies how long that investigation data is kept.
86 87 88 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 86 def retention_in_days @retention_in_days end |
#role_arn ⇒ String? (readonly)
The ARN of the IAM role that the investigation group uses for permissions to gather data.
91 92 93 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 91 def role_arn @role_arn end |
#tag_key_boundaries ⇒ Array<String>? (readonly)
Displays the custom tag keys for custom applications in your system that you have specified in the investigation group.
Resource tags help CloudWatch investigations narrow the search space when it is unable to discover definite relationships between resources.
98 99 100 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 98 def tag_key_boundaries @tag_key_boundaries end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The list of key-value pairs to associate with the resource.
103 104 105 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 103 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
105 106 107 108 109 110 111 112 113 114 115 116 117 118 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 105 def self.jsii_properties { :name => "name", :chatbot_notification_channels => "chatbotNotificationChannels", :cross_account_configurations => "crossAccountConfigurations", :encryption_config => "encryptionConfig", :investigation_group_policy => "investigationGroupPolicy", :is_cloud_trail_event_history_enabled => "isCloudTrailEventHistoryEnabled", :retention_in_days => "retentionInDays", :role_arn => "roleArn", :tag_key_boundaries => "tagKeyBoundaries", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
# File 'ai_ops/cfn_investigation_group_props.rb', line 120 def to_jsii result = {} result.merge!({ "name" => @name, "chatbotNotificationChannels" => @chatbot_notification_channels, "crossAccountConfigurations" => @cross_account_configurations, "encryptionConfig" => @encryption_config, "investigationGroupPolicy" => @investigation_group_policy, "isCloudTrailEventHistoryEnabled" => @is_cloud_trail_event_history_enabled, "retentionInDays" => @retention_in_days, "roleArn" => @role_arn, "tagKeyBoundaries" => @tag_key_boundaries, "tags" => @tags, }) result.compact end |