ElasticsearchDestinationConfiguration - Amazon Data Firehose

ElasticsearchDestinationConfiguration

Describes the configuration of a destination in Amazon OpenSearch Service.

Contents

IndexName

The Elasticsearch index name.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 80.

Pattern: .*

Required: Yes

RoleARN

The Amazon Resource Name (ARN) of the IAM role to be assumed by Firehose for calling the Amazon OpenSearch Service Configuration API and for indexing documents. For more information, see Grant Firehose Access to an Amazon S3 Destination and Amazon Resource Names (ARNs) and AWS Service Namespaces.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 512.

Pattern: arn:.*:iam::\d{12}:role/[a-zA-Z_0-9+=,.@\-_/]+

Required: Yes

S3Configuration

The configuration for the backup Amazon S3 location.

Type: S3DestinationConfiguration object

Required: Yes

BufferingHints

The buffering options. If no value is specified, the default values for ElasticsearchBufferingHints are used.

Type: ElasticsearchBufferingHints object

Required: No

CloudWatchLoggingOptions

The Amazon CloudWatch logging options for your Firehose stream.

Type: CloudWatchLoggingOptions object

Required: No

ClusterEndpoint

The endpoint to use when communicating with the cluster. Specify either this ClusterEndpoint or the DomainARN field.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 512.

Pattern: https:.*

Required: No

DocumentIdOptions

Indicates the method for setting up document ID. The supported methods are Firehose generated document ID and OpenSearch Service generated document ID.

Type: DocumentIdOptions object

Required: No

DomainARN

The ARN of the Amazon OpenSearch Service domain. The IAM role must have permissions for DescribeDomain, DescribeDomains, and DescribeDomainConfig after assuming the role specified in RoleARN. For more information, see Amazon Resource Names (ARNs) and AWS Service Namespaces.

Specify either ClusterEndpoint or DomainARN.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 512.

Pattern: arn:.*:es:[a-zA-Z0-9\-]+:\d{12}:domain/[a-z][-0-9a-z]{2,27}

Required: No

IndexRotationPeriod

The Elasticsearch index rotation period. Index rotation appends a timestamp to the IndexName to facilitate the expiration of old data. For more information, see Index Rotation for the Amazon OpenSearch Service Destination. The default value is OneDay.

Type: String

Valid Values: NoRotation | OneHour | OneDay | OneWeek | OneMonth

Required: No

ProcessingConfiguration

The data processing configuration.

Type: ProcessingConfiguration object

Required: No

RetryOptions

The retry behavior in case Firehose is unable to deliver documents to Amazon OpenSearch Service. The default value is 300 (5 minutes).

Type: ElasticsearchRetryOptions object

Required: No

S3BackupMode

Defines how documents should be delivered to Amazon S3. When it is set to FailedDocumentsOnly, Firehose writes any documents that could not be indexed to the configured Amazon S3 destination, with AmazonOpenSearchService-failed/ appended to the key prefix. When set to AllDocuments, Firehose delivers all incoming records to Amazon S3, and also writes failed documents with AmazonOpenSearchService-failed/ appended to the prefix. For more information, see Amazon S3 Backup for the Amazon OpenSearch Service Destination. Default value is FailedDocumentsOnly.

You can't change this backup mode after you create the Firehose stream.

Type: String

Valid Values: FailedDocumentsOnly | AllDocuments

Required: No

TypeName

The Elasticsearch type name. For Elasticsearch 6.x, there can be only one type per index. If you try to specify a new type for an existing index that already has another type, Firehose returns an error during run time.

For Elasticsearch 7.x, don't specify a TypeName.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 100.

Pattern: .*

Required: No

VpcConfiguration

The details of the VPC of the Amazon destination.

Type: VpcConfiguration object

Required: No

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: