Class: AWSCDK::KinesisFirehose::CfnDeliveryStream::AmazonopensearchserviceDestinationConfigurationProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
kinesis_firehose/cfn_delivery_stream.rb

Overview

Describes the configuration of a destination in Amazon OpenSearch Service.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(index_name:, role_arn:, s3_configuration:, buffering_hints: nil, cloud_watch_logging_options: nil, cluster_endpoint: nil, document_id_options: nil, domain_arn: nil, index_rotation_period: nil, processing_configuration: nil, retry_options: nil, s3_backup_mode: nil, type_name: nil, vpc_configuration: nil) ⇒ AmazonopensearchserviceDestinationConfigurationProperty

Returns a new instance of AmazonopensearchserviceDestinationConfigurationProperty.

Parameters:



1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1048

def initialize(index_name:, role_arn:, s3_configuration:, buffering_hints: nil, cloud_watch_logging_options: nil, cluster_endpoint: nil, document_id_options: nil, domain_arn: nil, index_rotation_period: nil, processing_configuration: nil, retry_options: nil, s3_backup_mode: nil, type_name: nil, vpc_configuration: nil)
  @index_name = index_name
  Jsii::Type.check_type(@index_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "indexName")
  @role_arn = role_arn
  Jsii::Type.check_type(@role_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn")
  @s3_configuration = s3_configuration.is_a?(Hash) ? ::AWSCDK::KinesisFirehose::CfnDeliveryStream::S3DestinationConfigurationProperty.new(**s3_configuration.transform_keys(&:to_sym)) : s3_configuration
  Jsii::Type.check_type(@s3_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzZmlyZWhvc2UuQ2ZuRGVsaXZlcnlTdHJlYW0uUzNEZXN0aW5hdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "s3Configuration")
  @buffering_hints = buffering_hints.is_a?(Hash) ? ::AWSCDK::KinesisFirehose::CfnDeliveryStream::AmazonopensearchserviceBufferingHintsProperty.new(**buffering_hints.transform_keys(&:to_sym)) : buffering_hints
  Jsii::Type.check_type(@buffering_hints, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzZmlyZWhvc2UuQ2ZuRGVsaXZlcnlTdHJlYW0uQW1hem9ub3BlbnNlYXJjaHNlcnZpY2VCdWZmZXJpbmdIaW50c1Byb3BlcnR5In1dfX0=")), "bufferingHints") unless @buffering_hints.nil?
  @cloud_watch_logging_options = cloud_watch_logging_options.is_a?(Hash) ? ::AWSCDK::KinesisFirehose::CfnDeliveryStream::CloudWatchLoggingOptionsProperty.new(**cloud_watch_logging_options.transform_keys(&:to_sym)) : cloud_watch_logging_options
  Jsii::Type.check_type(@cloud_watch_logging_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzZmlyZWhvc2UuQ2ZuRGVsaXZlcnlTdHJlYW0uQ2xvdWRXYXRjaExvZ2dpbmdPcHRpb25zUHJvcGVydHkifV19fQ==")), "cloudWatchLoggingOptions") unless @cloud_watch_logging_options.nil?
  @cluster_endpoint = cluster_endpoint
  Jsii::Type.check_type(@cluster_endpoint, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "clusterEndpoint") unless @cluster_endpoint.nil?
  @document_id_options = document_id_options.is_a?(Hash) ? ::AWSCDK::KinesisFirehose::CfnDeliveryStream::DocumentIdOptionsProperty.new(**document_id_options.transform_keys(&:to_sym)) : document_id_options
  Jsii::Type.check_type(@document_id_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzZmlyZWhvc2UuQ2ZuRGVsaXZlcnlTdHJlYW0uRG9jdW1lbnRJZE9wdGlvbnNQcm9wZXJ0eSJ9XX19")), "documentIdOptions") unless @document_id_options.nil?
  @domain_arn = domain_arn
  Jsii::Type.check_type(@domain_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "domainArn") unless @domain_arn.nil?
  @index_rotation_period = index_rotation_period
  Jsii::Type.check_type(@index_rotation_period, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "indexRotationPeriod") unless @index_rotation_period.nil?
  @processing_configuration = processing_configuration.is_a?(Hash) ? ::AWSCDK::KinesisFirehose::CfnDeliveryStream::ProcessingConfigurationProperty.new(**processing_configuration.transform_keys(&:to_sym)) : processing_configuration
  Jsii::Type.check_type(@processing_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzZmlyZWhvc2UuQ2ZuRGVsaXZlcnlTdHJlYW0uUHJvY2Vzc2luZ0NvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "processingConfiguration") unless @processing_configuration.nil?
  @retry_options = retry_options.is_a?(Hash) ? ::AWSCDK::KinesisFirehose::CfnDeliveryStream::AmazonopensearchserviceRetryOptionsProperty.new(**retry_options.transform_keys(&:to_sym)) : retry_options
  Jsii::Type.check_type(@retry_options, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzZmlyZWhvc2UuQ2ZuRGVsaXZlcnlTdHJlYW0uQW1hem9ub3BlbnNlYXJjaHNlcnZpY2VSZXRyeU9wdGlvbnNQcm9wZXJ0eSJ9XX19")), "retryOptions") unless @retry_options.nil?
  @s3_backup_mode = s3_backup_mode
  Jsii::Type.check_type(@s3_backup_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "s3BackupMode") unless @s3_backup_mode.nil?
  @type_name = type_name
  Jsii::Type.check_type(@type_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "typeName") unless @type_name.nil?
  @vpc_configuration = vpc_configuration.is_a?(Hash) ? ::AWSCDK::KinesisFirehose::CfnDeliveryStream::VPCConfigurationProperty.new(**vpc_configuration.transform_keys(&:to_sym)) : vpc_configuration
  Jsii::Type.check_type(@vpc_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19raW5lc2lzZmlyZWhvc2UuQ2ZuRGVsaXZlcnlTdHJlYW0uVnBjQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "vpcConfiguration") unless @vpc_configuration.nil?
end

Instance Attribute Details

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

The buffering options.

If no value is specified, the default values for AmazonopensearchserviceBufferingHints are used.



1100
1101
1102
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1100

def buffering_hints
  @buffering_hints
end

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

Describes the Amazon CloudWatch logging options for your delivery stream.



1105
1106
1107
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1105

def cloud_watch_logging_options
  @cloud_watch_logging_options
end

#cluster_endpointString? (readonly)

The endpoint to use when communicating with the cluster.

Specify either this ClusterEndpoint or the DomainARN field.



1112
1113
1114
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1112

def cluster_endpoint
  @cluster_endpoint
end

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

Indicates the method for setting up document ID.

The supported methods are Firehose generated document ID and OpenSearch Service generated document ID.



1119
1120
1121
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1119

def document_id_options
  @document_id_options
end

#domain_arnString? (readonly)

The ARN of the Amazon OpenSearch Service domain.



1124
1125
1126
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1124

def domain_arn
  @domain_arn
end

#index_nameString (readonly)

The Amazon OpenSearch Service index name.



1083
1084
1085
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1083

def index_name
  @index_name
end

#index_rotation_periodString? (readonly)

The Amazon OpenSearch Service index rotation period.

Index rotation appends a timestamp to the IndexName to facilitate the expiration of old data.



1131
1132
1133
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1131

def index_rotation_period
  @index_rotation_period
end

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

Describes a data processing configuration.



1136
1137
1138
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1136

def processing_configuration
  @processing_configuration
end

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

The retry behavior in case Kinesis Data Firehose is unable to deliver documents to Amazon OpenSearch Service.

The default value is 300 (5 minutes).



1143
1144
1145
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1143

def retry_options
  @retry_options
end

#role_arnString (readonly)

The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Amazon OpenSearch Service Configuration API and for indexing documents.



1088
1089
1090
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1088

def role_arn
  @role_arn
end

#s3_backup_modeString? (readonly)

Defines how documents should be delivered to Amazon S3.



1148
1149
1150
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1148

def s3_backup_mode
  @s3_backup_mode
end

#type_nameString? (readonly)

The Amazon OpenSearch Service type name.



1153
1154
1155
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1153

def type_name
  @type_name
end

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

The details of the VPC of the Amazon OpenSearch Service destination.



1158
1159
1160
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1158

def vpc_configuration
  @vpc_configuration
end

Class Method Details

.jsii_propertiesObject



1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1160

def self.jsii_properties
  {
    :index_name => "indexName",
    :role_arn => "roleArn",
    :s3_configuration => "s3Configuration",
    :buffering_hints => "bufferingHints",
    :cloud_watch_logging_options => "cloudWatchLoggingOptions",
    :cluster_endpoint => "clusterEndpoint",
    :document_id_options => "documentIdOptions",
    :domain_arn => "domainArn",
    :index_rotation_period => "indexRotationPeriod",
    :processing_configuration => "processingConfiguration",
    :retry_options => "retryOptions",
    :s3_backup_mode => "s3BackupMode",
    :type_name => "typeName",
    :vpc_configuration => "vpcConfiguration",
  }
end

Instance Method Details

#to_jsiiObject



1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
# File 'kinesis_firehose/cfn_delivery_stream.rb', line 1179

def to_jsii
  result = {}
  result.merge!({
    "indexName" => @index_name,
    "roleArn" => @role_arn,
    "s3Configuration" => @s3_configuration,
    "bufferingHints" => @buffering_hints,
    "cloudWatchLoggingOptions" => @cloud_watch_logging_options,
    "clusterEndpoint" => @cluster_endpoint,
    "documentIdOptions" => @document_id_options,
    "domainArn" => @domain_arn,
    "indexRotationPeriod" => @index_rotation_period,
    "processingConfiguration" => @processing_configuration,
    "retryOptions" => @retry_options,
    "s3BackupMode" => @s3_backup_mode,
    "typeName" => @type_name,
    "vpcConfiguration" => @vpc_configuration,
  })
  result.compact
end