AWS Kinesis · Schema

ElasticsearchDestinationConfiguration

Describes the configuration of a destination in Amazon ES.

AnalyticsApache FlinkBig DataData ProcessingReal-TimeStreamingVideo

Properties

Name Type Description
RoleARN object
DomainARN object
ClusterEndpoint object
IndexName object
TypeName object
IndexRotationPeriod object
BufferingHints object
RetryOptions object
S3BackupMode object
S3Configuration object
ProcessingConfiguration object
CloudWatchLoggingOptions object
VpcConfiguration object
View JSON Schema on GitHub

JSON Schema

kinesis-elasticsearchdestinationconfiguration-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ElasticsearchDestinationConfiguration",
  "title": "ElasticsearchDestinationConfiguration",
  "type": "object",
  "required": [
    "RoleARN",
    "IndexName",
    "S3Configuration"
  ],
  "properties": {
    "RoleARN": {
      "allOf": [
        {
          "$ref": "#/components/schemas/RoleARN"
        },
        {
          "description": "The Amazon Resource Name (ARN) of the IAM role to be assumed by Kinesis Data Firehose for calling the Amazon ES Configuration API and for indexing documents. For more information, see <a href=\"https://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3\">Grant Kinesis Data Firehose Access to an Amazon S3 Destination</a> and <a href=\"https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html\">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a>."
        }
      ]
    },
    "DomainARN": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ElasticsearchDomainARN"
        },
        {
          "description": "<p>The ARN of the Amazon ES domain. The IAM role must have permissions for\u00a0<code>DescribeDomain</code>, <code>DescribeDomains</code>, and <code>DescribeDomainConfig</code>\u00a0after assuming the role specified in <b>RoleARN</b>. For more information, see <a href=\"https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html\">Amazon Resource Names (ARNs) and Amazon Web Services Service Namespaces</a>.</p> <p>Specify either <code>ClusterEndpoint</code> or <code>DomainARN</code>.</p>"
        }
      ]
    },
    "ClusterEndpoint": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ElasticsearchClusterEndpoint"
        },
        {
          "description": "The endpoint to use when communicating with the cluster. Specify either this <code>ClusterEndpoint</code> or the <code>DomainARN</code> field."
        }
      ]
    },
    "IndexName": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ElasticsearchIndexName"
        },
        {
          "description": "The Elasticsearch index name."
        }
      ]
    },
    "TypeName": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ElasticsearchTypeName"
        },
        {
          "description": "<p>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, Kinesis Data Firehose returns an error during run time.</p> <p>For Elasticsearch 7.x, don't specify a <code>TypeName</code>.</p>"
        }
      ]
    },
    "IndexRotationPeriod": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ElasticsearchIndexRotationPeriod"
        },
        {
          "description": "The Elasticsearch index rotation period. Index rotation appends a timestamp to the <code>IndexName</code> to facilitate the expiration of old data. For more information, see <a href=\"https://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation\">Index Rotation for the Amazon ES Destination</a>. The default value is\u00a0<code>OneDay</code>."
        }
      ]
    },
    "BufferingHints": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ElasticsearchBufferingHints"
        },
        {
          "description": "The buffering options. If no value is specified, the default values for <code>ElasticsearchBufferingHints</code> are used."
        }
      ]
    },
    "RetryOptions": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ElasticsearchRetryOptions"
        },
        {
          "description": "The retry behavior in case Kinesis Data Firehose is unable to deliver documents to Amazon ES. The default value is 300 (5 minutes)."
        }
      ]
    },
    "S3BackupMode": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ElasticsearchS3BackupMode"
        },
        {
          "description": "<p>Defines how documents should be delivered to Amazon S3. When it is set to <code>FailedDocumentsOnly</code>, Kinesis Data Firehose writes any documents that could not be indexed to the configured Amazon S3 destination, with <code>AmazonOpenSearchService-failed/</code> appended to the key prefix. When set to <code>AllDocuments</code>, Kinesis Data Firehose delivers all incoming records to Amazon S3, and also writes failed documents with <code>AmazonOpenSearchService-failed/</code> appended to the prefix. For more information, see <a href=\"https://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-s3-backup\">Amazon S3 Backup for the Amazon ES Destination</a>. Default value is <code>FailedDocumentsOnly</code>.</p> <p>You can't change this backup mode after you create the delivery stream. </p>"
        }
      ]
    },
    "S3Configuration": {
      "allOf": [
        {
          "$ref": "#/components/schemas/S3DestinationConfiguration"
        },
        {
          "description": "The configuration for the backup Amazon S3 location."
        }
      ]
    },
    "ProcessingConfiguration": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ProcessingConfiguration"
        },
        {
          "description": "The data processing configuration."
        }
      ]
    },
    "CloudWatchLoggingOptions": {
      "allOf": [
        {
          "$ref": "#/components/schemas/CloudWatchLoggingOptions"
        },
        {
          "description": "The Amazon CloudWatch logging options for your delivery stream."
        }
      ]
    },
    "VpcConfiguration": {
      "allOf": [
        {
          "$ref": "#/components/schemas/VpcConfiguration"
        },
        {
          "description": "The details of the VPC of the Amazon ES destination."
        }
      ]
    }
  },
  "description": "Describes the configuration of a destination in Amazon ES."
}