Class: AWSCDK::Logs::CfnDestinationProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::Logs::CfnDestinationProps
- Defined in:
- logs/cfn_destination_props.rb
Overview
Properties for defining a CfnDestination.
Instance Attribute Summary collapse
-
#destination_name ⇒ String
readonly
The name of the destination.
-
#destination_policy ⇒ String?
readonly
An IAM policy document that governs which AWS accounts can create subscription filters against this destination.
-
#role_arn ⇒ String, AWSCDK::Interfaces::AWSIAM::IRoleRef
readonly
The ARN of an IAM role that permits CloudWatch Logs to send data to the specified AWS resource.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
The tags that have been assigned to this delivery destination.
-
#target_arn ⇒ String, ...
readonly
The Amazon Resource Name (ARN) of the physical target where the log events are delivered (for example, a Kinesis stream).
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(destination_name:, role_arn:, target_arn:, destination_policy: nil, tags: nil) ⇒ CfnDestinationProps
constructor
A new instance of CfnDestinationProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(destination_name:, role_arn:, target_arn:, destination_policy: nil, tags: nil) ⇒ CfnDestinationProps
Returns a new instance of CfnDestinationProps.
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'logs/cfn_destination_props.rb', line 14 def initialize(destination_name:, role_arn:, target_arn:, destination_policy: nil, tags: nil) @destination_name = destination_name Jsii::Type.check_type(@destination_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "destinationName") @role_arn = role_arn Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19pYW0uSVJvbGVSZWYifV19fQ==")), "roleArn") @target_arn = target_arn Jsii::Type.check_type(@target_arn, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoic3RyaW5nIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19raW5lc2lzLklTdHJlYW1SZWYifSx7ImZxbiI6ImF3cy1jZGstbGliLmludGVyZmFjZXMuYXdzX2tpbmVzaXNmaXJlaG9zZS5JRGVsaXZlcnlTdHJlYW1SZWYifSx7ImZxbiI6ImF3cy1jZGstbGliLmludGVyZmFjZXMuYXdzX2xhbWJkYS5JRnVuY3Rpb25SZWYifV19fQ==")), "targetArn") @destination_policy = destination_policy Jsii::Type.check_type(@destination_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "destinationPolicy") unless @destination_policy.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
#destination_name ⇒ String (readonly)
The name of the destination.
31 32 33 |
# File 'logs/cfn_destination_props.rb', line 31 def destination_name @destination_name end |
#destination_policy ⇒ String? (readonly)
An IAM policy document that governs which AWS accounts can create subscription filters against this destination.
46 47 48 |
# File 'logs/cfn_destination_props.rb', line 46 def destination_policy @destination_policy end |
#role_arn ⇒ String, AWSCDK::Interfaces::AWSIAM::IRoleRef (readonly)
The ARN of an IAM role that permits CloudWatch Logs to send data to the specified AWS resource.
36 37 38 |
# File 'logs/cfn_destination_props.rb', line 36 def role_arn @role_arn end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
The tags that have been assigned to this delivery destination.
51 52 53 |
# File 'logs/cfn_destination_props.rb', line 51 def @tags end |
#target_arn ⇒ String, ... (readonly)
The Amazon Resource Name (ARN) of the physical target where the log events are delivered (for example, a Kinesis stream).
41 42 43 |
# File 'logs/cfn_destination_props.rb', line 41 def target_arn @target_arn end |
Class Method Details
.jsii_properties ⇒ Object
53 54 55 56 57 58 59 60 61 |
# File 'logs/cfn_destination_props.rb', line 53 def self.jsii_properties { :destination_name => "destinationName", :role_arn => "roleArn", :target_arn => "targetArn", :destination_policy => "destinationPolicy", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
63 64 65 66 67 68 69 70 71 72 73 |
# File 'logs/cfn_destination_props.rb', line 63 def to_jsii result = {} result.merge!({ "destinationName" => @destination_name, "roleArn" => @role_arn, "targetArn" => @target_arn, "destinationPolicy" => @destination_policy, "tags" => @tags, }) result.compact end |