Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamElasticsearchConfigurationArgs Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.kinesis.inputs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamElasticsearchConfigurationCloudwatchLoggingOptionsArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamElasticsearchConfigurationProcessingConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamElasticsearchConfigurationS3ConfigurationArgs;
import com.pulumi.aws.kinesis.inputs.FirehoseDeliveryStreamElasticsearchConfigurationVpcConfigArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class FirehoseDeliveryStreamElasticsearchConfigurationArgs extends com.pulumi.resources.ResourceArgs {
public static final FirehoseDeliveryStreamElasticsearchConfigurationArgs Empty = new FirehoseDeliveryStreamElasticsearchConfigurationArgs();
/**
* Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination. The default value is 300s.
*
*/
@Import(name="bufferingInterval")
private @Nullable Output bufferingInterval;
/**
* @return Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination. The default value is 300s.
*
*/
public Optional> bufferingInterval() {
return Optional.ofNullable(this.bufferingInterval);
}
/**
* Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination. The default value is 5MB.
*
*/
@Import(name="bufferingSize")
private @Nullable Output bufferingSize;
/**
* @return Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination. The default value is 5MB.
*
*/
public Optional> bufferingSize() {
return Optional.ofNullable(this.bufferingSize);
}
/**
* The CloudWatch Logging Options for the delivery stream. See `cloudwatch_logging_options` block below for details.
*
*/
@Import(name="cloudwatchLoggingOptions")
private @Nullable Output cloudwatchLoggingOptions;
/**
* @return The CloudWatch Logging Options for the delivery stream. See `cloudwatch_logging_options` block below for details.
*
*/
public Optional> cloudwatchLoggingOptions() {
return Optional.ofNullable(this.cloudwatchLoggingOptions);
}
/**
* The endpoint to use when communicating with the cluster. Conflicts with `domain_arn`.
*
*/
@Import(name="clusterEndpoint")
private @Nullable Output clusterEndpoint;
/**
* @return The endpoint to use when communicating with the cluster. Conflicts with `domain_arn`.
*
*/
public Optional> clusterEndpoint() {
return Optional.ofNullable(this.clusterEndpoint);
}
/**
* The ARN of the Amazon ES domain. The pattern needs to be `arn:.*`. Conflicts with `cluster_endpoint`.
*
*/
@Import(name="domainArn")
private @Nullable Output domainArn;
/**
* @return The ARN of the Amazon ES domain. The pattern needs to be `arn:.*`. Conflicts with `cluster_endpoint`.
*
*/
public Optional> domainArn() {
return Optional.ofNullable(this.domainArn);
}
/**
* The Elasticsearch index name.
*
*/
@Import(name="indexName", required=true)
private Output indexName;
/**
* @return The Elasticsearch index name.
*
*/
public Output indexName() {
return this.indexName;
}
/**
* The Elasticsearch index rotation period. Index rotation appends a timestamp to the IndexName to facilitate expiration of old data. Valid values are `NoRotation`, `OneHour`, `OneDay`, `OneWeek`, and `OneMonth`. The default value is `OneDay`.
*
*/
@Import(name="indexRotationPeriod")
private @Nullable Output indexRotationPeriod;
/**
* @return The Elasticsearch index rotation period. Index rotation appends a timestamp to the IndexName to facilitate expiration of old data. Valid values are `NoRotation`, `OneHour`, `OneDay`, `OneWeek`, and `OneMonth`. The default value is `OneDay`.
*
*/
public Optional> indexRotationPeriod() {
return Optional.ofNullable(this.indexRotationPeriod);
}
/**
* The data processing configuration. See `processing_configuration` block below for details.
*
*/
@Import(name="processingConfiguration")
private @Nullable Output processingConfiguration;
/**
* @return The data processing configuration. See `processing_configuration` block below for details.
*
*/
public Optional> processingConfiguration() {
return Optional.ofNullable(this.processingConfiguration);
}
/**
* After an initial failure to deliver to Amazon Elasticsearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. The default value is 300s. There will be no retry if the value is 0.
*
*/
@Import(name="retryDuration")
private @Nullable Output retryDuration;
/**
* @return After an initial failure to deliver to Amazon Elasticsearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. The default value is 300s. There will be no retry if the value is 0.
*
*/
public Optional> retryDuration() {
return Optional.ofNullable(this.retryDuration);
}
/**
* The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents. The IAM role must have permission for `DescribeElasticsearchDomain`, `DescribeElasticsearchDomains`, and `DescribeElasticsearchDomainConfig`. The pattern needs to be `arn:.*`.
*
*/
@Import(name="roleArn", required=true)
private Output roleArn;
/**
* @return The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents. The IAM role must have permission for `DescribeElasticsearchDomain`, `DescribeElasticsearchDomains`, and `DescribeElasticsearchDomainConfig`. The pattern needs to be `arn:.*`.
*
*/
public Output roleArn() {
return this.roleArn;
}
/**
* Defines how documents should be delivered to Amazon S3. Valid values are `FailedDocumentsOnly` and `AllDocuments`. Default value is `FailedDocumentsOnly`.
*
*/
@Import(name="s3BackupMode")
private @Nullable Output s3BackupMode;
/**
* @return Defines how documents should be delivered to Amazon S3. Valid values are `FailedDocumentsOnly` and `AllDocuments`. Default value is `FailedDocumentsOnly`.
*
*/
public Optional> s3BackupMode() {
return Optional.ofNullable(this.s3BackupMode);
}
/**
* The S3 Configuration. See `s3_configuration` block below for details.
*
*/
@Import(name="s3Configuration", required=true)
private Output s3Configuration;
/**
* @return The S3 Configuration. See `s3_configuration` block below for details.
*
*/
public Output s3Configuration() {
return this.s3Configuration;
}
/**
* The Elasticsearch type name with maximum length of 100 characters.
*
*/
@Import(name="typeName")
private @Nullable Output typeName;
/**
* @return The Elasticsearch type name with maximum length of 100 characters.
*
*/
public Optional> typeName() {
return Optional.ofNullable(this.typeName);
}
/**
* The VPC configuration for the delivery stream to connect to Elastic Search associated with the VPC. See `vpc_config` block below for details.
*
*/
@Import(name="vpcConfig")
private @Nullable Output vpcConfig;
/**
* @return The VPC configuration for the delivery stream to connect to Elastic Search associated with the VPC. See `vpc_config` block below for details.
*
*/
public Optional> vpcConfig() {
return Optional.ofNullable(this.vpcConfig);
}
private FirehoseDeliveryStreamElasticsearchConfigurationArgs() {}
private FirehoseDeliveryStreamElasticsearchConfigurationArgs(FirehoseDeliveryStreamElasticsearchConfigurationArgs $) {
this.bufferingInterval = $.bufferingInterval;
this.bufferingSize = $.bufferingSize;
this.cloudwatchLoggingOptions = $.cloudwatchLoggingOptions;
this.clusterEndpoint = $.clusterEndpoint;
this.domainArn = $.domainArn;
this.indexName = $.indexName;
this.indexRotationPeriod = $.indexRotationPeriod;
this.processingConfiguration = $.processingConfiguration;
this.retryDuration = $.retryDuration;
this.roleArn = $.roleArn;
this.s3BackupMode = $.s3BackupMode;
this.s3Configuration = $.s3Configuration;
this.typeName = $.typeName;
this.vpcConfig = $.vpcConfig;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(FirehoseDeliveryStreamElasticsearchConfigurationArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private FirehoseDeliveryStreamElasticsearchConfigurationArgs $;
public Builder() {
$ = new FirehoseDeliveryStreamElasticsearchConfigurationArgs();
}
public Builder(FirehoseDeliveryStreamElasticsearchConfigurationArgs defaults) {
$ = new FirehoseDeliveryStreamElasticsearchConfigurationArgs(Objects.requireNonNull(defaults));
}
/**
* @param bufferingInterval Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination. The default value is 300s.
*
* @return builder
*
*/
public Builder bufferingInterval(@Nullable Output bufferingInterval) {
$.bufferingInterval = bufferingInterval;
return this;
}
/**
* @param bufferingInterval Buffer incoming data for the specified period of time, in seconds between 0 to 900, before delivering it to the destination. The default value is 300s.
*
* @return builder
*
*/
public Builder bufferingInterval(Integer bufferingInterval) {
return bufferingInterval(Output.of(bufferingInterval));
}
/**
* @param bufferingSize Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination. The default value is 5MB.
*
* @return builder
*
*/
public Builder bufferingSize(@Nullable Output bufferingSize) {
$.bufferingSize = bufferingSize;
return this;
}
/**
* @param bufferingSize Buffer incoming data to the specified size, in MBs between 1 to 100, before delivering it to the destination. The default value is 5MB.
*
* @return builder
*
*/
public Builder bufferingSize(Integer bufferingSize) {
return bufferingSize(Output.of(bufferingSize));
}
/**
* @param cloudwatchLoggingOptions The CloudWatch Logging Options for the delivery stream. See `cloudwatch_logging_options` block below for details.
*
* @return builder
*
*/
public Builder cloudwatchLoggingOptions(@Nullable Output cloudwatchLoggingOptions) {
$.cloudwatchLoggingOptions = cloudwatchLoggingOptions;
return this;
}
/**
* @param cloudwatchLoggingOptions The CloudWatch Logging Options for the delivery stream. See `cloudwatch_logging_options` block below for details.
*
* @return builder
*
*/
public Builder cloudwatchLoggingOptions(FirehoseDeliveryStreamElasticsearchConfigurationCloudwatchLoggingOptionsArgs cloudwatchLoggingOptions) {
return cloudwatchLoggingOptions(Output.of(cloudwatchLoggingOptions));
}
/**
* @param clusterEndpoint The endpoint to use when communicating with the cluster. Conflicts with `domain_arn`.
*
* @return builder
*
*/
public Builder clusterEndpoint(@Nullable Output clusterEndpoint) {
$.clusterEndpoint = clusterEndpoint;
return this;
}
/**
* @param clusterEndpoint The endpoint to use when communicating with the cluster. Conflicts with `domain_arn`.
*
* @return builder
*
*/
public Builder clusterEndpoint(String clusterEndpoint) {
return clusterEndpoint(Output.of(clusterEndpoint));
}
/**
* @param domainArn The ARN of the Amazon ES domain. The pattern needs to be `arn:.*`. Conflicts with `cluster_endpoint`.
*
* @return builder
*
*/
public Builder domainArn(@Nullable Output domainArn) {
$.domainArn = domainArn;
return this;
}
/**
* @param domainArn The ARN of the Amazon ES domain. The pattern needs to be `arn:.*`. Conflicts with `cluster_endpoint`.
*
* @return builder
*
*/
public Builder domainArn(String domainArn) {
return domainArn(Output.of(domainArn));
}
/**
* @param indexName The Elasticsearch index name.
*
* @return builder
*
*/
public Builder indexName(Output indexName) {
$.indexName = indexName;
return this;
}
/**
* @param indexName The Elasticsearch index name.
*
* @return builder
*
*/
public Builder indexName(String indexName) {
return indexName(Output.of(indexName));
}
/**
* @param indexRotationPeriod The Elasticsearch index rotation period. Index rotation appends a timestamp to the IndexName to facilitate expiration of old data. Valid values are `NoRotation`, `OneHour`, `OneDay`, `OneWeek`, and `OneMonth`. The default value is `OneDay`.
*
* @return builder
*
*/
public Builder indexRotationPeriod(@Nullable Output indexRotationPeriod) {
$.indexRotationPeriod = indexRotationPeriod;
return this;
}
/**
* @param indexRotationPeriod The Elasticsearch index rotation period. Index rotation appends a timestamp to the IndexName to facilitate expiration of old data. Valid values are `NoRotation`, `OneHour`, `OneDay`, `OneWeek`, and `OneMonth`. The default value is `OneDay`.
*
* @return builder
*
*/
public Builder indexRotationPeriod(String indexRotationPeriod) {
return indexRotationPeriod(Output.of(indexRotationPeriod));
}
/**
* @param processingConfiguration The data processing configuration. See `processing_configuration` block below for details.
*
* @return builder
*
*/
public Builder processingConfiguration(@Nullable Output processingConfiguration) {
$.processingConfiguration = processingConfiguration;
return this;
}
/**
* @param processingConfiguration The data processing configuration. See `processing_configuration` block below for details.
*
* @return builder
*
*/
public Builder processingConfiguration(FirehoseDeliveryStreamElasticsearchConfigurationProcessingConfigurationArgs processingConfiguration) {
return processingConfiguration(Output.of(processingConfiguration));
}
/**
* @param retryDuration After an initial failure to deliver to Amazon Elasticsearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. The default value is 300s. There will be no retry if the value is 0.
*
* @return builder
*
*/
public Builder retryDuration(@Nullable Output retryDuration) {
$.retryDuration = retryDuration;
return this;
}
/**
* @param retryDuration After an initial failure to deliver to Amazon Elasticsearch, the total amount of time, in seconds between 0 to 7200, during which Firehose re-attempts delivery (including the first attempt). After this time has elapsed, the failed documents are written to Amazon S3. The default value is 300s. There will be no retry if the value is 0.
*
* @return builder
*
*/
public Builder retryDuration(Integer retryDuration) {
return retryDuration(Output.of(retryDuration));
}
/**
* @param roleArn The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents. The IAM role must have permission for `DescribeElasticsearchDomain`, `DescribeElasticsearchDomains`, and `DescribeElasticsearchDomainConfig`. The pattern needs to be `arn:.*`.
*
* @return builder
*
*/
public Builder roleArn(Output roleArn) {
$.roleArn = roleArn;
return this;
}
/**
* @param roleArn The ARN of the IAM role to be assumed by Firehose for calling the Amazon ES Configuration API and for indexing documents. The IAM role must have permission for `DescribeElasticsearchDomain`, `DescribeElasticsearchDomains`, and `DescribeElasticsearchDomainConfig`. The pattern needs to be `arn:.*`.
*
* @return builder
*
*/
public Builder roleArn(String roleArn) {
return roleArn(Output.of(roleArn));
}
/**
* @param s3BackupMode Defines how documents should be delivered to Amazon S3. Valid values are `FailedDocumentsOnly` and `AllDocuments`. Default value is `FailedDocumentsOnly`.
*
* @return builder
*
*/
public Builder s3BackupMode(@Nullable Output s3BackupMode) {
$.s3BackupMode = s3BackupMode;
return this;
}
/**
* @param s3BackupMode Defines how documents should be delivered to Amazon S3. Valid values are `FailedDocumentsOnly` and `AllDocuments`. Default value is `FailedDocumentsOnly`.
*
* @return builder
*
*/
public Builder s3BackupMode(String s3BackupMode) {
return s3BackupMode(Output.of(s3BackupMode));
}
/**
* @param s3Configuration The S3 Configuration. See `s3_configuration` block below for details.
*
* @return builder
*
*/
public Builder s3Configuration(Output s3Configuration) {
$.s3Configuration = s3Configuration;
return this;
}
/**
* @param s3Configuration The S3 Configuration. See `s3_configuration` block below for details.
*
* @return builder
*
*/
public Builder s3Configuration(FirehoseDeliveryStreamElasticsearchConfigurationS3ConfigurationArgs s3Configuration) {
return s3Configuration(Output.of(s3Configuration));
}
/**
* @param typeName The Elasticsearch type name with maximum length of 100 characters.
*
* @return builder
*
*/
public Builder typeName(@Nullable Output typeName) {
$.typeName = typeName;
return this;
}
/**
* @param typeName The Elasticsearch type name with maximum length of 100 characters.
*
* @return builder
*
*/
public Builder typeName(String typeName) {
return typeName(Output.of(typeName));
}
/**
* @param vpcConfig The VPC configuration for the delivery stream to connect to Elastic Search associated with the VPC. See `vpc_config` block below for details.
*
* @return builder
*
*/
public Builder vpcConfig(@Nullable Output vpcConfig) {
$.vpcConfig = vpcConfig;
return this;
}
/**
* @param vpcConfig The VPC configuration for the delivery stream to connect to Elastic Search associated with the VPC. See `vpc_config` block below for details.
*
* @return builder
*
*/
public Builder vpcConfig(FirehoseDeliveryStreamElasticsearchConfigurationVpcConfigArgs vpcConfig) {
return vpcConfig(Output.of(vpcConfig));
}
public FirehoseDeliveryStreamElasticsearchConfigurationArgs build() {
if ($.indexName == null) {
throw new MissingRequiredPropertyException("FirehoseDeliveryStreamElasticsearchConfigurationArgs", "indexName");
}
if ($.roleArn == null) {
throw new MissingRequiredPropertyException("FirehoseDeliveryStreamElasticsearchConfigurationArgs", "roleArn");
}
if ($.s3Configuration == null) {
throw new MissingRequiredPropertyException("FirehoseDeliveryStreamElasticsearchConfigurationArgs", "s3Configuration");
}
return $;
}
}
}