firehose

package
v1.10.8-0...-b95fc66 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 6, 2017 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package firehose provides the client and types for making API requests to Amazon Kinesis Firehose.

Amazon Kinesis Firehose is a fully-managed service that delivers real-time streaming data to destinations such as Amazon Simple Storage Service (Amazon S3), Amazon Elasticsearch Service (Amazon ES), and Amazon Redshift.

See https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04 for more information on this service.

See firehose package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/firehose/

Using the Client

To use the client for Amazon Kinesis Firehose you will first need to create a new instance of it.

When creating a client for an AWS service you'll first need to have a Session already created. The Session provides configuration that can be shared between multiple service clients. Additional configuration can be applied to the Session and service's client when they are constructed. The aws package's Config type contains several fields such as Region for the AWS Region the client should make API requests too. The optional Config value can be provided as the variadic argument for Sessions and client creation.

Once the service's client is created you can use it to make API requests the AWS service. These clients are safe to use concurrently.

// Create a session to share configuration, and load external configuration.
sess := session.Must(session.NewSession())

// Create the service's client with the session.
svc := firehose.New(sess)

See the SDK's documentation for more information on how to use service clients. https://docs.aws.amazon.com/sdk-for-go/api/

See aws package's Config type for more information on configuration options. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the Amazon Kinesis Firehose client Firehose for more information on creating the service's client. https://docs.aws.amazon.com/sdk-for-go/api/service/firehose/#New

Once the client is created you can make an API request to the service. Each API method takes a input parameter, and returns the service response and an error.

The API method will document which error codes the service can be returned by the operation if the service models the API operation's errors. These errors will also be available as const strings prefixed with "ErrCode".

result, err := svc.CreateDeliveryStream(params)
if err != nil {
    // Cast err to awserr.Error to handle specific error codes.
    aerr, ok := err.(awserr.Error)
    if ok && aerr.Code() == <error code to check for> {
        // Specific error code handling
    }
    return err
}

fmt.Println("CreateDeliveryStream result:")
fmt.Println(result)

Using the Client with Context

The service's client also provides methods to make API requests with a Context value. This allows you to control the timeout, and cancellation of pending requests. These methods also take request Option as variadic parameter to apply additional configuration to the API request.

ctx := context.Background()

result, err := svc.CreateDeliveryStreamWithContext(ctx, params)

See the request package documentation for more information on using Context pattern with the SDK. https://docs.aws.amazon.com/sdk-for-go/api/aws/request/

Index

Constants

View Source
const (
	// CompressionFormatUncompressed is a CompressionFormat enum value
	CompressionFormatUncompressed = "UNCOMPRESSED"

	// CompressionFormatGzip is a CompressionFormat enum value
	CompressionFormatGzip = "GZIP"

	// CompressionFormatZip is a CompressionFormat enum value
	CompressionFormatZip = "ZIP"

	// CompressionFormatSnappy is a CompressionFormat enum value
	CompressionFormatSnappy = "Snappy"
)
View Source
const (
	// DeliveryStreamStatusCreating is a DeliveryStreamStatus enum value
	DeliveryStreamStatusCreating = "CREATING"

	// DeliveryStreamStatusDeleting is a DeliveryStreamStatus enum value
	DeliveryStreamStatusDeleting = "DELETING"

	// DeliveryStreamStatusActive is a DeliveryStreamStatus enum value
	DeliveryStreamStatusActive = "ACTIVE"
)
View Source
const (
	// ElasticsearchIndexRotationPeriodNoRotation is a ElasticsearchIndexRotationPeriod enum value
	ElasticsearchIndexRotationPeriodNoRotation = "NoRotation"

	// ElasticsearchIndexRotationPeriodOneHour is a ElasticsearchIndexRotationPeriod enum value
	ElasticsearchIndexRotationPeriodOneHour = "OneHour"

	// ElasticsearchIndexRotationPeriodOneDay is a ElasticsearchIndexRotationPeriod enum value
	ElasticsearchIndexRotationPeriodOneDay = "OneDay"

	// ElasticsearchIndexRotationPeriodOneWeek is a ElasticsearchIndexRotationPeriod enum value
	ElasticsearchIndexRotationPeriodOneWeek = "OneWeek"

	// ElasticsearchIndexRotationPeriodOneMonth is a ElasticsearchIndexRotationPeriod enum value
	ElasticsearchIndexRotationPeriodOneMonth = "OneMonth"
)
View Source
const (
	// ElasticsearchS3BackupModeFailedDocumentsOnly is a ElasticsearchS3BackupMode enum value
	ElasticsearchS3BackupModeFailedDocumentsOnly = "FailedDocumentsOnly"

	// ElasticsearchS3BackupModeAllDocuments is a ElasticsearchS3BackupMode enum value
	ElasticsearchS3BackupModeAllDocuments = "AllDocuments"
)
View Source
const (
	// ProcessorParameterNameLambdaArn is a ProcessorParameterName enum value
	ProcessorParameterNameLambdaArn = "LambdaArn"

	// ProcessorParameterNameNumberOfRetries is a ProcessorParameterName enum value
	ProcessorParameterNameNumberOfRetries = "NumberOfRetries"
)
View Source
const (
	// RedshiftS3BackupModeDisabled is a RedshiftS3BackupMode enum value
	RedshiftS3BackupModeDisabled = "Disabled"

	// RedshiftS3BackupModeEnabled is a RedshiftS3BackupMode enum value
	RedshiftS3BackupModeEnabled = "Enabled"
)
View Source
const (
	// S3BackupModeDisabled is a S3BackupMode enum value
	S3BackupModeDisabled = "Disabled"

	// S3BackupModeEnabled is a S3BackupMode enum value
	S3BackupModeEnabled = "Enabled"
)
View Source
const (

	// ErrCodeConcurrentModificationException for service response error code
	// "ConcurrentModificationException".
	//
	// Another modification has already happened. Fetch VersionId again and use
	// it to update the destination.
	ErrCodeConcurrentModificationException = "ConcurrentModificationException"

	// ErrCodeInvalidArgumentException for service response error code
	// "InvalidArgumentException".
	//
	// The specified input parameter has an value that is not valid.
	ErrCodeInvalidArgumentException = "InvalidArgumentException"

	// ErrCodeLimitExceededException for service response error code
	// "LimitExceededException".
	//
	// You have already reached the limit for a requested resource.
	ErrCodeLimitExceededException = "LimitExceededException"

	// ErrCodeResourceInUseException for service response error code
	// "ResourceInUseException".
	//
	// The resource is already in use and not available for this operation.
	ErrCodeResourceInUseException = "ResourceInUseException"

	// ErrCodeResourceNotFoundException for service response error code
	// "ResourceNotFoundException".
	//
	// The specified resource could not be found.
	ErrCodeResourceNotFoundException = "ResourceNotFoundException"

	// ErrCodeServiceUnavailableException for service response error code
	// "ServiceUnavailableException".
	//
	// The service is unavailable, back off and retry the operation. If you continue
	// to see the exception, throughput limits for the delivery stream may have
	// been exceeded. For more information about limits and how to request an increase,
	// see Amazon Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html).
	ErrCodeServiceUnavailableException = "ServiceUnavailableException"
)
View Source
const (
	ServiceName = "firehose"  // Service endpoint prefix API calls made to.
	EndpointsID = ServiceName // Service ID for Regions and Endpoints metadata.
)

Service information constants

View Source
const (
	// NoEncryptionConfigNoEncryption is a NoEncryptionConfig enum value
	NoEncryptionConfigNoEncryption = "NoEncryption"
)
View Source
const (
	// ProcessorTypeLambda is a ProcessorType enum value
	ProcessorTypeLambda = "Lambda"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type BufferingHints

type BufferingHints struct {

	// Buffer incoming data for the specified period of time, in seconds, before
	// delivering it to the destination. The default value is 300.
	IntervalInSeconds *int64 `min:"60" type:"integer"`

	// Buffer incoming data to the specified size, in MBs, before delivering it
	// to the destination. The default value is 5.
	//
	// We recommend setting this parameter to a value greater than the amount of
	// data you typically ingest into the delivery stream in 10 seconds. For example,
	// if you typically ingest data at 1 MB/sec, the value should be 10 MB or higher.
	SizeInMBs *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

Describes hints for the buffering to perform before delivering data to the destination. Please note that these options are treated as hints, and therefore Firehose may choose to use different values when it is optimal. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/BufferingHints

func (BufferingHints) GoString

func (s BufferingHints) GoString() string

GoString returns the string representation

func (*BufferingHints) SetIntervalInSeconds

func (s *BufferingHints) SetIntervalInSeconds(v int64) *BufferingHints

SetIntervalInSeconds sets the IntervalInSeconds field's value.

func (*BufferingHints) SetSizeInMBs

func (s *BufferingHints) SetSizeInMBs(v int64) *BufferingHints

SetSizeInMBs sets the SizeInMBs field's value.

func (BufferingHints) String

func (s BufferingHints) String() string

String returns the string representation

func (*BufferingHints) Validate

func (s *BufferingHints) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CloudWatchLoggingOptions

type CloudWatchLoggingOptions struct {

	// Enables or disables CloudWatch logging.
	Enabled *bool `type:"boolean"`

	// The CloudWatch group name for logging. This value is required if CloudWatch
	// logging is enabled.
	LogGroupName *string `type:"string"`

	// The CloudWatch log stream name for logging. This value is required if CloudWatch
	// logging is enabled.
	LogStreamName *string `type:"string"`
	// contains filtered or unexported fields
}

Describes the CloudWatch logging options for your delivery stream. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/CloudWatchLoggingOptions

func (CloudWatchLoggingOptions) GoString

func (s CloudWatchLoggingOptions) GoString() string

GoString returns the string representation

func (*CloudWatchLoggingOptions) SetEnabled

SetEnabled sets the Enabled field's value.

func (*CloudWatchLoggingOptions) SetLogGroupName

SetLogGroupName sets the LogGroupName field's value.

func (*CloudWatchLoggingOptions) SetLogStreamName

SetLogStreamName sets the LogStreamName field's value.

func (CloudWatchLoggingOptions) String

func (s CloudWatchLoggingOptions) String() string

String returns the string representation

type CopyCommand

type CopyCommand struct {

	// Optional parameters to use with the Amazon Redshift COPY command. For more
	// information, see the "Optional Parameters" section of Amazon Redshift COPY
	// command (http://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html). Some
	// possible examples that would apply to Firehose are as follows:
	//
	// delimiter '\t' lzop; - fields are delimited with "\t" (TAB character) and
	// compressed using lzop.
	//
	// delimiter '| - fields are delimited with "|" (this is the default delimiter).
	//
	// delimiter '|' escape - the delimiter should be escaped.
	//
	// fixedwidth 'venueid:3,venuename:25,venuecity:12,venuestate:2,venueseats:6'
	// - fields are fixed width in the source, with each width specified after every
	// column in the table.
	//
	// JSON 's3://mybucket/jsonpaths.txt' - data is in JSON format, and the path
	// specified is the format of the data.
	//
	// For more examples, see Amazon Redshift COPY command examples (http://docs.aws.amazon.com/redshift/latest/dg/r_COPY_command_examples.html).
	CopyOptions *string `type:"string"`

	// A comma-separated list of column names.
	DataTableColumns *string `type:"string"`

	// The name of the target table. The table must already exist in the database.
	//
	// DataTableName is a required field
	DataTableName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes a COPY command for Amazon Redshift. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/CopyCommand

func (CopyCommand) GoString

func (s CopyCommand) GoString() string

GoString returns the string representation

func (*CopyCommand) SetCopyOptions

func (s *CopyCommand) SetCopyOptions(v string) *CopyCommand

SetCopyOptions sets the CopyOptions field's value.

func (*CopyCommand) SetDataTableColumns

func (s *CopyCommand) SetDataTableColumns(v string) *CopyCommand

SetDataTableColumns sets the DataTableColumns field's value.

func (*CopyCommand) SetDataTableName

func (s *CopyCommand) SetDataTableName(v string) *CopyCommand

SetDataTableName sets the DataTableName field's value.

func (CopyCommand) String

func (s CopyCommand) String() string

String returns the string representation

func (*CopyCommand) Validate

func (s *CopyCommand) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateDeliveryStreamInput

type CreateDeliveryStreamInput struct {

	// The name of the delivery stream. This name must be unique per AWS account
	// in the same region. You can have multiple delivery streams with the same
	// name if they are in different accounts or different regions.
	//
	// DeliveryStreamName is a required field
	DeliveryStreamName *string `min:"1" type:"string" required:"true"`

	// The destination in Amazon ES. You can specify only one destination.
	ElasticsearchDestinationConfiguration *ElasticsearchDestinationConfiguration `type:"structure"`

	// The destination in Amazon S3. You can specify only one destination.
	ExtendedS3DestinationConfiguration *ExtendedS3DestinationConfiguration `type:"structure"`

	// The destination in Amazon Redshift. You can specify only one destination.
	RedshiftDestinationConfiguration *RedshiftDestinationConfiguration `type:"structure"`

	// [Deprecated] The destination in Amazon S3. You can specify only one destination.
	S3DestinationConfiguration *S3DestinationConfiguration `deprecated:"true" type:"structure"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/CreateDeliveryStreamInput

func (CreateDeliveryStreamInput) GoString

func (s CreateDeliveryStreamInput) GoString() string

GoString returns the string representation

func (*CreateDeliveryStreamInput) SetDeliveryStreamName

func (s *CreateDeliveryStreamInput) SetDeliveryStreamName(v string) *CreateDeliveryStreamInput

SetDeliveryStreamName sets the DeliveryStreamName field's value.

func (*CreateDeliveryStreamInput) SetElasticsearchDestinationConfiguration

func (s *CreateDeliveryStreamInput) SetElasticsearchDestinationConfiguration(v *ElasticsearchDestinationConfiguration) *CreateDeliveryStreamInput

SetElasticsearchDestinationConfiguration sets the ElasticsearchDestinationConfiguration field's value.

func (*CreateDeliveryStreamInput) SetExtendedS3DestinationConfiguration

func (s *CreateDeliveryStreamInput) SetExtendedS3DestinationConfiguration(v *ExtendedS3DestinationConfiguration) *CreateDeliveryStreamInput

SetExtendedS3DestinationConfiguration sets the ExtendedS3DestinationConfiguration field's value.

func (*CreateDeliveryStreamInput) SetRedshiftDestinationConfiguration

func (s *CreateDeliveryStreamInput) SetRedshiftDestinationConfiguration(v *RedshiftDestinationConfiguration) *CreateDeliveryStreamInput

SetRedshiftDestinationConfiguration sets the RedshiftDestinationConfiguration field's value.

func (*CreateDeliveryStreamInput) SetS3DestinationConfiguration

SetS3DestinationConfiguration sets the S3DestinationConfiguration field's value.

func (CreateDeliveryStreamInput) String

func (s CreateDeliveryStreamInput) String() string

String returns the string representation

func (*CreateDeliveryStreamInput) Validate

func (s *CreateDeliveryStreamInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateDeliveryStreamOutput

type CreateDeliveryStreamOutput struct {

	// The ARN of the delivery stream.
	DeliveryStreamARN *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/CreateDeliveryStreamOutput

func (CreateDeliveryStreamOutput) GoString

func (s CreateDeliveryStreamOutput) GoString() string

GoString returns the string representation

func (*CreateDeliveryStreamOutput) SetDeliveryStreamARN

func (s *CreateDeliveryStreamOutput) SetDeliveryStreamARN(v string) *CreateDeliveryStreamOutput

SetDeliveryStreamARN sets the DeliveryStreamARN field's value.

func (CreateDeliveryStreamOutput) String

String returns the string representation

type DeleteDeliveryStreamInput

type DeleteDeliveryStreamInput struct {

	// The name of the delivery stream.
	//
	// DeliveryStreamName is a required field
	DeliveryStreamName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DeleteDeliveryStreamInput

func (DeleteDeliveryStreamInput) GoString

func (s DeleteDeliveryStreamInput) GoString() string

GoString returns the string representation

func (*DeleteDeliveryStreamInput) SetDeliveryStreamName

func (s *DeleteDeliveryStreamInput) SetDeliveryStreamName(v string) *DeleteDeliveryStreamInput

SetDeliveryStreamName sets the DeliveryStreamName field's value.

func (DeleteDeliveryStreamInput) String

func (s DeleteDeliveryStreamInput) String() string

String returns the string representation

func (*DeleteDeliveryStreamInput) Validate

func (s *DeleteDeliveryStreamInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteDeliveryStreamOutput

type DeleteDeliveryStreamOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DeleteDeliveryStreamOutput

func (DeleteDeliveryStreamOutput) GoString

func (s DeleteDeliveryStreamOutput) GoString() string

GoString returns the string representation

func (DeleteDeliveryStreamOutput) String

String returns the string representation

type DeliveryStreamDescription

type DeliveryStreamDescription struct {

	// The date and time that the delivery stream was created.
	CreateTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"`

	// The Amazon Resource Name (ARN) of the delivery stream.
	//
	// DeliveryStreamARN is a required field
	DeliveryStreamARN *string `min:"1" type:"string" required:"true"`

	// The name of the delivery stream.
	//
	// DeliveryStreamName is a required field
	DeliveryStreamName *string `min:"1" type:"string" required:"true"`

	// The status of the delivery stream.
	//
	// DeliveryStreamStatus is a required field
	DeliveryStreamStatus *string `type:"string" required:"true" enum:"DeliveryStreamStatus"`

	// The destinations.
	//
	// Destinations is a required field
	Destinations []*DestinationDescription `type:"list" required:"true"`

	// Indicates whether there are more destinations available to list.
	//
	// HasMoreDestinations is a required field
	HasMoreDestinations *bool `type:"boolean" required:"true"`

	// The date and time that the delivery stream was last updated.
	LastUpdateTimestamp *time.Time `type:"timestamp" timestampFormat:"unix"`

	// Each time the destination is updated for a delivery stream, the version ID
	// is changed, and the current version ID is required when updating the destination.
	// This is so that the service knows it is applying the changes to the correct
	// version of the delivery stream.
	//
	// VersionId is a required field
	VersionId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Contains information about a delivery stream. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DeliveryStreamDescription

func (DeliveryStreamDescription) GoString

func (s DeliveryStreamDescription) GoString() string

GoString returns the string representation

func (*DeliveryStreamDescription) SetCreateTimestamp

SetCreateTimestamp sets the CreateTimestamp field's value.

func (*DeliveryStreamDescription) SetDeliveryStreamARN

func (s *DeliveryStreamDescription) SetDeliveryStreamARN(v string) *DeliveryStreamDescription

SetDeliveryStreamARN sets the DeliveryStreamARN field's value.

func (*DeliveryStreamDescription) SetDeliveryStreamName

func (s *DeliveryStreamDescription) SetDeliveryStreamName(v string) *DeliveryStreamDescription

SetDeliveryStreamName sets the DeliveryStreamName field's value.

func (*DeliveryStreamDescription) SetDeliveryStreamStatus

func (s *DeliveryStreamDescription) SetDeliveryStreamStatus(v string) *DeliveryStreamDescription

SetDeliveryStreamStatus sets the DeliveryStreamStatus field's value.

func (*DeliveryStreamDescription) SetDestinations

SetDestinations sets the Destinations field's value.

func (*DeliveryStreamDescription) SetHasMoreDestinations

func (s *DeliveryStreamDescription) SetHasMoreDestinations(v bool) *DeliveryStreamDescription

SetHasMoreDestinations sets the HasMoreDestinations field's value.

func (*DeliveryStreamDescription) SetLastUpdateTimestamp

func (s *DeliveryStreamDescription) SetLastUpdateTimestamp(v time.Time) *DeliveryStreamDescription

SetLastUpdateTimestamp sets the LastUpdateTimestamp field's value.

func (*DeliveryStreamDescription) SetVersionId

SetVersionId sets the VersionId field's value.

func (DeliveryStreamDescription) String

func (s DeliveryStreamDescription) String() string

String returns the string representation

type DescribeDeliveryStreamInput

type DescribeDeliveryStreamInput struct {

	// The name of the delivery stream.
	//
	// DeliveryStreamName is a required field
	DeliveryStreamName *string `min:"1" type:"string" required:"true"`

	// The ID of the destination to start returning the destination information.
	// Currently Firehose supports one destination per delivery stream.
	ExclusiveStartDestinationId *string `min:"1" type:"string"`

	// The limit on the number of destinations to return. Currently, you can have
	// one destination per delivery stream.
	Limit *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DescribeDeliveryStreamInput

func (DescribeDeliveryStreamInput) GoString

func (s DescribeDeliveryStreamInput) GoString() string

GoString returns the string representation

func (*DescribeDeliveryStreamInput) SetDeliveryStreamName

func (s *DescribeDeliveryStreamInput) SetDeliveryStreamName(v string) *DescribeDeliveryStreamInput

SetDeliveryStreamName sets the DeliveryStreamName field's value.

func (*DescribeDeliveryStreamInput) SetExclusiveStartDestinationId

func (s *DescribeDeliveryStreamInput) SetExclusiveStartDestinationId(v string) *DescribeDeliveryStreamInput

SetExclusiveStartDestinationId sets the ExclusiveStartDestinationId field's value.

func (*DescribeDeliveryStreamInput) SetLimit

SetLimit sets the Limit field's value.

func (DescribeDeliveryStreamInput) String

String returns the string representation

func (*DescribeDeliveryStreamInput) Validate

func (s *DescribeDeliveryStreamInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DescribeDeliveryStreamOutput

type DescribeDeliveryStreamOutput struct {

	// Information about the delivery stream.
	//
	// DeliveryStreamDescription is a required field
	DeliveryStreamDescription *DeliveryStreamDescription `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DescribeDeliveryStreamOutput

func (DescribeDeliveryStreamOutput) GoString

func (s DescribeDeliveryStreamOutput) GoString() string

GoString returns the string representation

func (*DescribeDeliveryStreamOutput) SetDeliveryStreamDescription

SetDeliveryStreamDescription sets the DeliveryStreamDescription field's value.

func (DescribeDeliveryStreamOutput) String

String returns the string representation

type DestinationDescription

type DestinationDescription struct {

	// The ID of the destination.
	//
	// DestinationId is a required field
	DestinationId *string `min:"1" type:"string" required:"true"`

	// The destination in Amazon ES.
	ElasticsearchDestinationDescription *ElasticsearchDestinationDescription `type:"structure"`

	// The destination in Amazon S3.
	ExtendedS3DestinationDescription *ExtendedS3DestinationDescription `type:"structure"`

	// The destination in Amazon Redshift.
	RedshiftDestinationDescription *RedshiftDestinationDescription `type:"structure"`

	// [Deprecated] The destination in Amazon S3.
	S3DestinationDescription *S3DestinationDescription `type:"structure"`
	// contains filtered or unexported fields
}

Describes the destination for a delivery stream. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DestinationDescription

func (DestinationDescription) GoString

func (s DestinationDescription) GoString() string

GoString returns the string representation

func (*DestinationDescription) SetDestinationId

func (s *DestinationDescription) SetDestinationId(v string) *DestinationDescription

SetDestinationId sets the DestinationId field's value.

func (*DestinationDescription) SetElasticsearchDestinationDescription

func (s *DestinationDescription) SetElasticsearchDestinationDescription(v *ElasticsearchDestinationDescription) *DestinationDescription

SetElasticsearchDestinationDescription sets the ElasticsearchDestinationDescription field's value.

func (*DestinationDescription) SetExtendedS3DestinationDescription

func (s *DestinationDescription) SetExtendedS3DestinationDescription(v *ExtendedS3DestinationDescription) *DestinationDescription

SetExtendedS3DestinationDescription sets the ExtendedS3DestinationDescription field's value.

func (*DestinationDescription) SetRedshiftDestinationDescription

func (s *DestinationDescription) SetRedshiftDestinationDescription(v *RedshiftDestinationDescription) *DestinationDescription

SetRedshiftDestinationDescription sets the RedshiftDestinationDescription field's value.

func (*DestinationDescription) SetS3DestinationDescription

func (s *DestinationDescription) SetS3DestinationDescription(v *S3DestinationDescription) *DestinationDescription

SetS3DestinationDescription sets the S3DestinationDescription field's value.

func (DestinationDescription) String

func (s DestinationDescription) String() string

String returns the string representation

type ElasticsearchBufferingHints

type ElasticsearchBufferingHints struct {

	// Buffer incoming data for the specified period of time, in seconds, before
	// delivering it to the destination. The default value is 300 (5 minutes).
	IntervalInSeconds *int64 `min:"60" type:"integer"`

	// Buffer incoming data to the specified size, in MBs, before delivering it
	// to the destination. The default value is 5.
	//
	// We recommend setting this parameter to a value greater than the amount of
	// data you typically ingest into the delivery stream in 10 seconds. For example,
	// if you typically ingest data at 1 MB/sec, the value should be 10 MB or higher.
	SizeInMBs *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

Describes the buffering to perform before delivering data to the Amazon ES destination. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ElasticsearchBufferingHints

func (ElasticsearchBufferingHints) GoString

func (s ElasticsearchBufferingHints) GoString() string

GoString returns the string representation

func (*ElasticsearchBufferingHints) SetIntervalInSeconds

SetIntervalInSeconds sets the IntervalInSeconds field's value.

func (*ElasticsearchBufferingHints) SetSizeInMBs

SetSizeInMBs sets the SizeInMBs field's value.

func (ElasticsearchBufferingHints) String

String returns the string representation

func (*ElasticsearchBufferingHints) Validate

func (s *ElasticsearchBufferingHints) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ElasticsearchDestinationConfiguration

type ElasticsearchDestinationConfiguration struct {

	// The buffering options. If no value is specified, the default values for ElasticsearchBufferingHints
	// are used.
	BufferingHints *ElasticsearchBufferingHints `type:"structure"`

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The ARN of the Amazon ES domain. The IAM role must have permissions for DescribeElasticsearchDomain,
	// DescribeElasticsearchDomains, and DescribeElasticsearchDomainConfig after
	// assuming the role specified in RoleARN.
	//
	// DomainARN is a required field
	DomainARN *string `min:"1" type:"string" required:"true"`

	// The Elasticsearch index name.
	//
	// IndexName is a required field
	IndexName *string `min:"1" type:"string" required:"true"`

	// The Elasticsearch index rotation period. Index rotation appends a timestamp
	// to the IndexName to facilitate expiration of old data. For more information,
	// see Index Rotation for Amazon Elasticsearch Service Destination (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation).
	// The default value is OneDay.
	IndexRotationPeriod *string `type:"string" enum:"ElasticsearchIndexRotationPeriod"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The retry behavior in the event that Firehose is unable to deliver documents
	// to Amazon ES. The default value is 300 (5 minutes).
	RetryOptions *ElasticsearchRetryOptions `type:"structure"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon
	// ES Configuration API and for indexing documents. For more information, see
	// Amazon S3 Bucket Access (http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3).
	//
	// RoleARN is a required field
	RoleARN *string `min:"1" type:"string" required:"true"`

	// Defines how documents should be delivered to Amazon S3. When set to FailedDocumentsOnly,
	// Firehose writes any documents that could not be indexed to the configured
	// Amazon S3 destination, with elasticsearch-failed/ appended to the key prefix.
	// When set to AllDocuments, Firehose delivers all incoming records to Amazon
	// S3, and also writes failed documents with elasticsearch-failed/ appended
	// to the prefix. For more information, see Amazon S3 Backup for Amazon Elasticsearch
	// Service Destination (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-s3-backup).
	// Default value is FailedDocumentsOnly.
	S3BackupMode *string `type:"string" enum:"ElasticsearchS3BackupMode"`

	// The configuration for the intermediate Amazon S3 location from which Amazon
	// ES obtains data.
	//
	// S3Configuration is a required field
	S3Configuration *S3DestinationConfiguration `type:"structure" required:"true"`

	// The Elasticsearch type name.
	//
	// TypeName is a required field
	TypeName *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes the configuration of a destination in Amazon ES. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ElasticsearchDestinationConfiguration

func (ElasticsearchDestinationConfiguration) GoString

GoString returns the string representation

func (*ElasticsearchDestinationConfiguration) SetBufferingHints

SetBufferingHints sets the BufferingHints field's value.

func (*ElasticsearchDestinationConfiguration) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*ElasticsearchDestinationConfiguration) SetDomainARN

SetDomainARN sets the DomainARN field's value.

func (*ElasticsearchDestinationConfiguration) SetIndexName

SetIndexName sets the IndexName field's value.

func (*ElasticsearchDestinationConfiguration) SetIndexRotationPeriod

SetIndexRotationPeriod sets the IndexRotationPeriod field's value.

func (*ElasticsearchDestinationConfiguration) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*ElasticsearchDestinationConfiguration) SetRetryOptions

SetRetryOptions sets the RetryOptions field's value.

func (*ElasticsearchDestinationConfiguration) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*ElasticsearchDestinationConfiguration) SetS3BackupMode

SetS3BackupMode sets the S3BackupMode field's value.

func (*ElasticsearchDestinationConfiguration) SetS3Configuration

SetS3Configuration sets the S3Configuration field's value.

func (*ElasticsearchDestinationConfiguration) SetTypeName

SetTypeName sets the TypeName field's value.

func (ElasticsearchDestinationConfiguration) String

String returns the string representation

func (*ElasticsearchDestinationConfiguration) Validate

Validate inspects the fields of the type to determine if they are valid.

type ElasticsearchDestinationDescription

type ElasticsearchDestinationDescription struct {

	// The buffering options.
	BufferingHints *ElasticsearchBufferingHints `type:"structure"`

	// The CloudWatch logging options.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The ARN of the Amazon ES domain.
	DomainARN *string `min:"1" type:"string"`

	// The Elasticsearch index name.
	IndexName *string `min:"1" type:"string"`

	// The Elasticsearch index rotation period
	IndexRotationPeriod *string `type:"string" enum:"ElasticsearchIndexRotationPeriod"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The Amazon ES retry options.
	RetryOptions *ElasticsearchRetryOptions `type:"structure"`

	// The ARN of the AWS credentials.
	RoleARN *string `min:"1" type:"string"`

	// The Amazon S3 backup mode.
	S3BackupMode *string `type:"string" enum:"ElasticsearchS3BackupMode"`

	// The Amazon S3 destination.
	S3DestinationDescription *S3DestinationDescription `type:"structure"`

	// The Elasticsearch type name.
	TypeName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

The destination description in Amazon ES. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ElasticsearchDestinationDescription

func (ElasticsearchDestinationDescription) GoString

GoString returns the string representation

func (*ElasticsearchDestinationDescription) SetBufferingHints

SetBufferingHints sets the BufferingHints field's value.

func (*ElasticsearchDestinationDescription) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*ElasticsearchDestinationDescription) SetDomainARN

SetDomainARN sets the DomainARN field's value.

func (*ElasticsearchDestinationDescription) SetIndexName

SetIndexName sets the IndexName field's value.

func (*ElasticsearchDestinationDescription) SetIndexRotationPeriod

SetIndexRotationPeriod sets the IndexRotationPeriod field's value.

func (*ElasticsearchDestinationDescription) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*ElasticsearchDestinationDescription) SetRetryOptions

SetRetryOptions sets the RetryOptions field's value.

func (*ElasticsearchDestinationDescription) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*ElasticsearchDestinationDescription) SetS3BackupMode

SetS3BackupMode sets the S3BackupMode field's value.

func (*ElasticsearchDestinationDescription) SetS3DestinationDescription

SetS3DestinationDescription sets the S3DestinationDescription field's value.

func (*ElasticsearchDestinationDescription) SetTypeName

SetTypeName sets the TypeName field's value.

func (ElasticsearchDestinationDescription) String

String returns the string representation

type ElasticsearchDestinationUpdate

type ElasticsearchDestinationUpdate struct {

	// The buffering options. If no value is specified, ElasticsearchBufferingHints
	// object default values are used.
	BufferingHints *ElasticsearchBufferingHints `type:"structure"`

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The ARN of the Amazon ES domain. The IAM role must have permissions for DescribeElasticsearchDomain,
	// DescribeElasticsearchDomains, and DescribeElasticsearchDomainConfig after
	// assuming the IAM role specified in RoleARN.
	DomainARN *string `min:"1" type:"string"`

	// The Elasticsearch index name.
	IndexName *string `min:"1" type:"string"`

	// The Elasticsearch index rotation period. Index rotation appends a timestamp
	// to IndexName to facilitate the expiration of old data. For more information,
	// see Index Rotation for Amazon Elasticsearch Service Destination (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation).
	// Default value is OneDay.
	IndexRotationPeriod *string `type:"string" enum:"ElasticsearchIndexRotationPeriod"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The retry behavior in the event that Firehose is unable to deliver documents
	// to Amazon ES. Default value is 300 (5 minutes).
	RetryOptions *ElasticsearchRetryOptions `type:"structure"`

	// The ARN of the IAM role to be assumed by Firehose for calling the Amazon
	// ES Configuration API and for indexing documents. For more information, see
	// Amazon S3 Bucket Access (http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3).
	RoleARN *string `min:"1" type:"string"`

	// The Amazon S3 destination.
	S3Update *S3DestinationUpdate `type:"structure"`

	// The Elasticsearch type name.
	TypeName *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Describes an update for a destination in Amazon ES. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ElasticsearchDestinationUpdate

func (ElasticsearchDestinationUpdate) GoString

GoString returns the string representation

func (*ElasticsearchDestinationUpdate) SetBufferingHints

SetBufferingHints sets the BufferingHints field's value.

func (*ElasticsearchDestinationUpdate) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*ElasticsearchDestinationUpdate) SetDomainARN

SetDomainARN sets the DomainARN field's value.

func (*ElasticsearchDestinationUpdate) SetIndexName

SetIndexName sets the IndexName field's value.

func (*ElasticsearchDestinationUpdate) SetIndexRotationPeriod

SetIndexRotationPeriod sets the IndexRotationPeriod field's value.

func (*ElasticsearchDestinationUpdate) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*ElasticsearchDestinationUpdate) SetRetryOptions

SetRetryOptions sets the RetryOptions field's value.

func (*ElasticsearchDestinationUpdate) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*ElasticsearchDestinationUpdate) SetS3Update

SetS3Update sets the S3Update field's value.

func (*ElasticsearchDestinationUpdate) SetTypeName

SetTypeName sets the TypeName field's value.

func (ElasticsearchDestinationUpdate) String

String returns the string representation

func (*ElasticsearchDestinationUpdate) Validate

func (s *ElasticsearchDestinationUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ElasticsearchRetryOptions

type ElasticsearchRetryOptions struct {

	// After an initial failure to deliver to Amazon ES, the total amount of time
	// during which Firehose re-attempts delivery (including the first attempt).
	// After this time has elapsed, the failed documents are written to Amazon S3.
	// Default value is 300 seconds (5 minutes). A value of 0 (zero) results in
	// no retries.
	DurationInSeconds *int64 `type:"integer"`
	// contains filtered or unexported fields
}

Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon ES. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ElasticsearchRetryOptions

func (ElasticsearchRetryOptions) GoString

func (s ElasticsearchRetryOptions) GoString() string

GoString returns the string representation

func (*ElasticsearchRetryOptions) SetDurationInSeconds

func (s *ElasticsearchRetryOptions) SetDurationInSeconds(v int64) *ElasticsearchRetryOptions

SetDurationInSeconds sets the DurationInSeconds field's value.

func (ElasticsearchRetryOptions) String

func (s ElasticsearchRetryOptions) String() string

String returns the string representation

type EncryptionConfiguration

type EncryptionConfiguration struct {

	// The encryption key.
	KMSEncryptionConfig *KMSEncryptionConfig `type:"structure"`

	// Specifically override existing encryption information to ensure no encryption
	// is used.
	NoEncryptionConfig *string `type:"string" enum:"NoEncryptionConfig"`
	// contains filtered or unexported fields
}

Describes the encryption for a destination in Amazon S3. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/EncryptionConfiguration

func (EncryptionConfiguration) GoString

func (s EncryptionConfiguration) GoString() string

GoString returns the string representation

func (*EncryptionConfiguration) SetKMSEncryptionConfig

SetKMSEncryptionConfig sets the KMSEncryptionConfig field's value.

func (*EncryptionConfiguration) SetNoEncryptionConfig

func (s *EncryptionConfiguration) SetNoEncryptionConfig(v string) *EncryptionConfiguration

SetNoEncryptionConfig sets the NoEncryptionConfig field's value.

func (EncryptionConfiguration) String

func (s EncryptionConfiguration) String() string

String returns the string representation

func (*EncryptionConfiguration) Validate

func (s *EncryptionConfiguration) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ExtendedS3DestinationConfiguration

type ExtendedS3DestinationConfiguration struct {

	// The ARN of the S3 bucket.
	//
	// BucketARN is a required field
	BucketARN *string `min:"1" type:"string" required:"true"`

	// The buffering option.
	BufferingHints *BufferingHints `type:"structure"`

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED.
	CompressionFormat *string `type:"string" enum:"CompressionFormat"`

	// The encryption configuration. If no value is specified, the default is no
	// encryption.
	EncryptionConfiguration *EncryptionConfiguration `type:"structure"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered
	// S3 files. You can specify an extra prefix to be added in front of the time
	// format prefix. Note that if the prefix ends with a slash, it appears as a
	// folder in the S3 bucket. For more information, see Amazon S3 Object Name
	// Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html)
	// in the Amazon Kinesis Firehose Developer Guide.
	Prefix *string `type:"string"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The ARN of the AWS credentials.
	//
	// RoleARN is a required field
	RoleARN *string `min:"1" type:"string" required:"true"`

	// The configuration for backup in Amazon S3.
	S3BackupConfiguration *S3DestinationConfiguration `type:"structure"`

	// The Amazon S3 backup mode.
	S3BackupMode *string `type:"string" enum:"S3BackupMode"`
	// contains filtered or unexported fields
}

Describes the configuration of a destination in Amazon S3. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ExtendedS3DestinationConfiguration

func (ExtendedS3DestinationConfiguration) GoString

GoString returns the string representation

func (*ExtendedS3DestinationConfiguration) SetBucketARN

SetBucketARN sets the BucketARN field's value.

func (*ExtendedS3DestinationConfiguration) SetBufferingHints

SetBufferingHints sets the BufferingHints field's value.

func (*ExtendedS3DestinationConfiguration) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*ExtendedS3DestinationConfiguration) SetCompressionFormat

SetCompressionFormat sets the CompressionFormat field's value.

func (*ExtendedS3DestinationConfiguration) SetEncryptionConfiguration

SetEncryptionConfiguration sets the EncryptionConfiguration field's value.

func (*ExtendedS3DestinationConfiguration) SetPrefix

SetPrefix sets the Prefix field's value.

func (*ExtendedS3DestinationConfiguration) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*ExtendedS3DestinationConfiguration) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*ExtendedS3DestinationConfiguration) SetS3BackupConfiguration

SetS3BackupConfiguration sets the S3BackupConfiguration field's value.

func (*ExtendedS3DestinationConfiguration) SetS3BackupMode

SetS3BackupMode sets the S3BackupMode field's value.

func (ExtendedS3DestinationConfiguration) String

String returns the string representation

func (*ExtendedS3DestinationConfiguration) Validate

Validate inspects the fields of the type to determine if they are valid.

type ExtendedS3DestinationDescription

type ExtendedS3DestinationDescription struct {

	// The ARN of the S3 bucket.
	//
	// BucketARN is a required field
	BucketARN *string `min:"1" type:"string" required:"true"`

	// The buffering option.
	//
	// BufferingHints is a required field
	BufferingHints *BufferingHints `type:"structure" required:"true"`

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED.
	//
	// CompressionFormat is a required field
	CompressionFormat *string `type:"string" required:"true" enum:"CompressionFormat"`

	// The encryption configuration. If no value is specified, the default is no
	// encryption.
	//
	// EncryptionConfiguration is a required field
	EncryptionConfiguration *EncryptionConfiguration `type:"structure" required:"true"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered
	// S3 files. You can specify an extra prefix to be added in front of the time
	// format prefix. Note that if the prefix ends with a slash, it appears as a
	// folder in the S3 bucket. For more information, see Amazon S3 Object Name
	// Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html)
	// in the Amazon Kinesis Firehose Developer Guide.
	Prefix *string `type:"string"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The ARN of the AWS credentials.
	//
	// RoleARN is a required field
	RoleARN *string `min:"1" type:"string" required:"true"`

	// The configuration for backup in Amazon S3.
	S3BackupDescription *S3DestinationDescription `type:"structure"`

	// The Amazon S3 backup mode.
	S3BackupMode *string `type:"string" enum:"S3BackupMode"`
	// contains filtered or unexported fields
}

Describes a destination in Amazon S3. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ExtendedS3DestinationDescription

func (ExtendedS3DestinationDescription) GoString

GoString returns the string representation

func (*ExtendedS3DestinationDescription) SetBucketARN

SetBucketARN sets the BucketARN field's value.

func (*ExtendedS3DestinationDescription) SetBufferingHints

SetBufferingHints sets the BufferingHints field's value.

func (*ExtendedS3DestinationDescription) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*ExtendedS3DestinationDescription) SetCompressionFormat

SetCompressionFormat sets the CompressionFormat field's value.

func (*ExtendedS3DestinationDescription) SetEncryptionConfiguration

SetEncryptionConfiguration sets the EncryptionConfiguration field's value.

func (*ExtendedS3DestinationDescription) SetPrefix

SetPrefix sets the Prefix field's value.

func (*ExtendedS3DestinationDescription) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*ExtendedS3DestinationDescription) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*ExtendedS3DestinationDescription) SetS3BackupDescription

SetS3BackupDescription sets the S3BackupDescription field's value.

func (*ExtendedS3DestinationDescription) SetS3BackupMode

SetS3BackupMode sets the S3BackupMode field's value.

func (ExtendedS3DestinationDescription) String

String returns the string representation

type ExtendedS3DestinationUpdate

type ExtendedS3DestinationUpdate struct {

	// The ARN of the S3 bucket.
	BucketARN *string `min:"1" type:"string"`

	// The buffering option.
	BufferingHints *BufferingHints `type:"structure"`

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED.
	CompressionFormat *string `type:"string" enum:"CompressionFormat"`

	// The encryption configuration. If no value is specified, the default is no
	// encryption.
	EncryptionConfiguration *EncryptionConfiguration `type:"structure"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered
	// S3 files. You can specify an extra prefix to be added in front of the time
	// format prefix. Note that if the prefix ends with a slash, it appears as a
	// folder in the S3 bucket. For more information, see Amazon S3 Object Name
	// Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html)
	// in the Amazon Kinesis Firehose Developer Guide.
	Prefix *string `type:"string"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The ARN of the AWS credentials.
	RoleARN *string `min:"1" type:"string"`

	// Enables or disables Amazon S3 backup mode.
	S3BackupMode *string `type:"string" enum:"S3BackupMode"`

	// The Amazon S3 destination for backup.
	S3BackupUpdate *S3DestinationUpdate `type:"structure"`
	// contains filtered or unexported fields
}

Describes an update for a destination in Amazon S3. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ExtendedS3DestinationUpdate

func (ExtendedS3DestinationUpdate) GoString

func (s ExtendedS3DestinationUpdate) GoString() string

GoString returns the string representation

func (*ExtendedS3DestinationUpdate) SetBucketARN

SetBucketARN sets the BucketARN field's value.

func (*ExtendedS3DestinationUpdate) SetBufferingHints

SetBufferingHints sets the BufferingHints field's value.

func (*ExtendedS3DestinationUpdate) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*ExtendedS3DestinationUpdate) SetCompressionFormat

SetCompressionFormat sets the CompressionFormat field's value.

func (*ExtendedS3DestinationUpdate) SetEncryptionConfiguration

SetEncryptionConfiguration sets the EncryptionConfiguration field's value.

func (*ExtendedS3DestinationUpdate) SetPrefix

SetPrefix sets the Prefix field's value.

func (*ExtendedS3DestinationUpdate) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*ExtendedS3DestinationUpdate) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*ExtendedS3DestinationUpdate) SetS3BackupMode

SetS3BackupMode sets the S3BackupMode field's value.

func (*ExtendedS3DestinationUpdate) SetS3BackupUpdate

SetS3BackupUpdate sets the S3BackupUpdate field's value.

func (ExtendedS3DestinationUpdate) String

String returns the string representation

func (*ExtendedS3DestinationUpdate) Validate

func (s *ExtendedS3DestinationUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Firehose

type Firehose struct {
	*client.Client
}

Firehose provides the API operation methods for making requests to Amazon Kinesis Firehose. See this package's package overview docs for details on the service.

Firehose methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *Firehose

New creates a new instance of the Firehose client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a Firehose client from just a session.
svc := firehose.New(mySession)

// Create a Firehose client with additional configuration
svc := firehose.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*Firehose) CreateDeliveryStream

func (c *Firehose) CreateDeliveryStream(input *CreateDeliveryStreamInput) (*CreateDeliveryStreamOutput, error)

CreateDeliveryStream API operation for Amazon Kinesis Firehose.

Creates a delivery stream.

By default, you can create up to 20 delivery streams per region.

This is an asynchronous operation that immediately returns. The initial status of the delivery stream is CREATING. After the delivery stream is created, its status is ACTIVE and it now accepts data. Attempts to send data to a delivery stream that is not in the ACTIVE state cause an exception. To check the state of a delivery stream, use DescribeDeliveryStream.

A delivery stream is configured with a single destination: Amazon S3, Amazon Elasticsearch Service, or Amazon Redshift. You must specify only one of the following destination configuration parameters: ExtendedS3DestinationConfiguration, S3DestinationConfiguration, ElasticsearchDestinationConfiguration, or RedshiftDestinationConfiguration.

When you specify S3DestinationConfiguration, you can also provide the following optional values: BufferingHints, EncryptionConfiguration, and CompressionFormat. By default, if no BufferingHints value is provided, Firehose buffers data up to 5 MB or for 5 minutes, whichever condition is satisfied first. Note that BufferingHints is a hint, so there are some cases where the service cannot adhere to these conditions strictly; for example, record boundaries are such that the size is a little over or under the configured buffering size. By default, no encryption is performed. We strongly recommend that you enable encryption to ensure secure data storage in Amazon S3.

A few notes about Amazon Redshift as a destination:

  • An Amazon Redshift destination requires an S3 bucket as intermediate location, as Firehose first delivers data to S3 and then uses COPY syntax to load data into an Amazon Redshift table. This is specified in the RedshiftDestinationConfiguration.S3Configuration parameter.

  • The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationConfiguration.S3Configuration because the Amazon Redshift COPY operation that reads from the S3 bucket doesn't support these compression formats.

  • We strongly recommend that you use the user name and password you provide exclusively with Firehose, and that the permissions for the account are restricted for Amazon Redshift INSERT permissions.

Firehose assumes the IAM role that is configured as part of the destination. The role should allow the Firehose principal to assume the role, and the role should have permissions that allows the service to deliver the data. For more information, see Amazon S3 Bucket Access (http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3) in the Amazon Kinesis Firehose Developer Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Kinesis Firehose's API operation CreateDeliveryStream for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidArgumentException "InvalidArgumentException" The specified input parameter has an value that is not valid.

  • ErrCodeLimitExceededException "LimitExceededException" You have already reached the limit for a requested resource.

  • ErrCodeResourceInUseException "ResourceInUseException" The resource is already in use and not available for this operation.

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/CreateDeliveryStream

func (*Firehose) CreateDeliveryStreamRequest

func (c *Firehose) CreateDeliveryStreamRequest(input *CreateDeliveryStreamInput) (req *request.Request, output *CreateDeliveryStreamOutput)

CreateDeliveryStreamRequest generates a "aws/request.Request" representing the client's request for the CreateDeliveryStream operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See CreateDeliveryStream for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the CreateDeliveryStream method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the CreateDeliveryStreamRequest method.
req, resp := client.CreateDeliveryStreamRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/CreateDeliveryStream

func (*Firehose) CreateDeliveryStreamWithContext

func (c *Firehose) CreateDeliveryStreamWithContext(ctx aws.Context, input *CreateDeliveryStreamInput, opts ...request.Option) (*CreateDeliveryStreamOutput, error)

CreateDeliveryStreamWithContext is the same as CreateDeliveryStream with the addition of the ability to pass a context and additional request options.

See CreateDeliveryStream for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Firehose) DeleteDeliveryStream

func (c *Firehose) DeleteDeliveryStream(input *DeleteDeliveryStreamInput) (*DeleteDeliveryStreamOutput, error)

DeleteDeliveryStream API operation for Amazon Kinesis Firehose.

Deletes a delivery stream and its data.

You can delete a delivery stream only if it is in ACTIVE or DELETING state, and not in the CREATING state. While the deletion request is in process, the delivery stream is in the DELETING state.

To check the state of a delivery stream, use DescribeDeliveryStream.

While the delivery stream is DELETING state, the service may continue to accept the records, but the service doesn't make any guarantees with respect to delivering the data. Therefore, as a best practice, you should first stop any applications that are sending records before deleting a delivery stream.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Kinesis Firehose's API operation DeleteDeliveryStream for usage and error information.

Returned Error Codes:

  • ErrCodeResourceInUseException "ResourceInUseException" The resource is already in use and not available for this operation.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found.

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DeleteDeliveryStream

func (*Firehose) DeleteDeliveryStreamRequest

func (c *Firehose) DeleteDeliveryStreamRequest(input *DeleteDeliveryStreamInput) (req *request.Request, output *DeleteDeliveryStreamOutput)

DeleteDeliveryStreamRequest generates a "aws/request.Request" representing the client's request for the DeleteDeliveryStream operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DeleteDeliveryStream for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DeleteDeliveryStream method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DeleteDeliveryStreamRequest method.
req, resp := client.DeleteDeliveryStreamRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DeleteDeliveryStream

func (*Firehose) DeleteDeliveryStreamWithContext

func (c *Firehose) DeleteDeliveryStreamWithContext(ctx aws.Context, input *DeleteDeliveryStreamInput, opts ...request.Option) (*DeleteDeliveryStreamOutput, error)

DeleteDeliveryStreamWithContext is the same as DeleteDeliveryStream with the addition of the ability to pass a context and additional request options.

See DeleteDeliveryStream for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Firehose) DescribeDeliveryStream

func (c *Firehose) DescribeDeliveryStream(input *DescribeDeliveryStreamInput) (*DescribeDeliveryStreamOutput, error)

DescribeDeliveryStream API operation for Amazon Kinesis Firehose.

Describes the specified delivery stream and gets the status. For example, after your delivery stream is created, call DescribeDeliveryStream to see if the delivery stream is ACTIVE and therefore ready for data to be sent to it.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Kinesis Firehose's API operation DescribeDeliveryStream for usage and error information.

Returned Error Codes:

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found.

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DescribeDeliveryStream

func (*Firehose) DescribeDeliveryStreamRequest

func (c *Firehose) DescribeDeliveryStreamRequest(input *DescribeDeliveryStreamInput) (req *request.Request, output *DescribeDeliveryStreamOutput)

DescribeDeliveryStreamRequest generates a "aws/request.Request" representing the client's request for the DescribeDeliveryStream operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See DescribeDeliveryStream for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the DescribeDeliveryStream method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the DescribeDeliveryStreamRequest method.
req, resp := client.DescribeDeliveryStreamRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/DescribeDeliveryStream

func (*Firehose) DescribeDeliveryStreamWithContext

func (c *Firehose) DescribeDeliveryStreamWithContext(ctx aws.Context, input *DescribeDeliveryStreamInput, opts ...request.Option) (*DescribeDeliveryStreamOutput, error)

DescribeDeliveryStreamWithContext is the same as DescribeDeliveryStream with the addition of the ability to pass a context and additional request options.

See DescribeDeliveryStream for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Firehose) ListDeliveryStreams

func (c *Firehose) ListDeliveryStreams(input *ListDeliveryStreamsInput) (*ListDeliveryStreamsOutput, error)

ListDeliveryStreams API operation for Amazon Kinesis Firehose.

Lists your delivery streams.

The number of delivery streams might be too large to return using a single call to ListDeliveryStreams. You can limit the number of delivery streams returned, using the Limit parameter. To determine whether there are more delivery streams to list, check the value of HasMoreDeliveryStreams in the output. If there are more delivery streams to list, you can request them by specifying the name of the last delivery stream returned in the call in the ExclusiveStartDeliveryStreamName parameter of a subsequent call.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Kinesis Firehose's API operation ListDeliveryStreams for usage and error information. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ListDeliveryStreams

func (*Firehose) ListDeliveryStreamsRequest

func (c *Firehose) ListDeliveryStreamsRequest(input *ListDeliveryStreamsInput) (req *request.Request, output *ListDeliveryStreamsOutput)

ListDeliveryStreamsRequest generates a "aws/request.Request" representing the client's request for the ListDeliveryStreams operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See ListDeliveryStreams for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the ListDeliveryStreams method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the ListDeliveryStreamsRequest method.
req, resp := client.ListDeliveryStreamsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ListDeliveryStreams

func (*Firehose) ListDeliveryStreamsWithContext

func (c *Firehose) ListDeliveryStreamsWithContext(ctx aws.Context, input *ListDeliveryStreamsInput, opts ...request.Option) (*ListDeliveryStreamsOutput, error)

ListDeliveryStreamsWithContext is the same as ListDeliveryStreams with the addition of the ability to pass a context and additional request options.

See ListDeliveryStreams for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Firehose) PutRecord

func (c *Firehose) PutRecord(input *PutRecordInput) (*PutRecordOutput, error)

PutRecord API operation for Amazon Kinesis Firehose.

Writes a single data record into an Amazon Kinesis Firehose delivery stream. To write multiple data records into a delivery stream, use PutRecordBatch. Applications using these operations are referred to as producers.

By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. Note that if you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits and how to request an increase, see Amazon Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html).

You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data, for example, a segment from a log file, geographic location data, web site clickstream data, etc.

Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\n) or some other character unique within the data. This allows the consumer application(s) to parse individual data items when reading the data from the destination.

The PutRecord operation returns a RecordId, which is a unique string assigned to each record. Producer applications can use this ID for purposes such as auditability and investigation.

If the PutRecord operation throws a ServiceUnavailableException, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.

Data records sent to Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Kinesis Firehose's API operation PutRecord for usage and error information.

Returned Error Codes:

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found.

  • ErrCodeInvalidArgumentException "InvalidArgumentException" The specified input parameter has an value that is not valid.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The service is unavailable, back off and retry the operation. If you continue to see the exception, throughput limits for the delivery stream may have been exceeded. For more information about limits and how to request an increase, see Amazon Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html).

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecord

func (*Firehose) PutRecordBatch

func (c *Firehose) PutRecordBatch(input *PutRecordBatchInput) (*PutRecordBatchOutput, error)

PutRecordBatch API operation for Amazon Kinesis Firehose.

Writes multiple data records into a delivery stream in a single call, which can achieve higher throughput per producer than when writing single records. To write single data records into a delivery stream, use PutRecord. Applications using these operations are referred to as producers.

By default, each delivery stream can take in up to 2,000 transactions per second, 5,000 records per second, or 5 MB per second. Note that if you use PutRecord and PutRecordBatch, the limits are an aggregate across these two operations for each delivery stream. For more information about limits, see Amazon Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html).

Each PutRecordBatch request supports up to 500 records. Each record in the request can be as large as 1,000 KB (before 64-bit encoding), up to a limit of 4 MB for the entire request. These limits cannot be changed.

You must specify the name of the delivery stream and the data record when using PutRecord. The data record consists of a data blob that can be up to 1,000 KB in size, and any kind of data, for example, a segment from a log file, geographic location data, web site clickstream data, and so on.

Firehose buffers records before delivering them to the destination. To disambiguate the data blobs at the destination, a common solution is to use delimiters in the data, such as a newline (\n) or some other character unique within the data. This allows the consumer application(s) to parse individual data items when reading the data from the destination.

The PutRecordBatch response includes a count of failed records, FailedPutCount, and an array of responses, RequestResponses. Each entry in the RequestResponses array provides additional information about the processed record, and directly correlates with a record in the request array using the same ordering, from the top to the bottom. The response array always includes the same number of records as the request array. RequestResponses includes both successfully and unsuccessfully processed records. Firehose attempts to process all records in each PutRecordBatch request. A single record failure does not stop the processing of subsequent records.

A successfully processed record includes a RecordId value, which is unique for the record. An unsuccessfully processed record includes ErrorCode and ErrorMessage values. ErrorCode reflects the type of error, and is one of the following values: ServiceUnavailable or InternalFailure. ErrorMessage provides more detailed information about the error.

If there is an internal server error or a timeout, the write might have completed or it might have failed. If FailedPutCount is greater than 0, retry the request, resending only those records that might have failed processing. This minimizes the possible duplicate records and also reduces the total bytes sent (and corresponding charges). We recommend that you handle any duplicates at the destination.

If PutRecordBatch throws ServiceUnavailableException, back off and retry. If the exception persists, it is possible that the throughput limits have been exceeded for the delivery stream.

Data records sent to Firehose are stored for 24 hours from the time they are added to a delivery stream as it attempts to send the records to the destination. If the destination is unreachable for more than 24 hours, the data is no longer available.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Kinesis Firehose's API operation PutRecordBatch for usage and error information.

Returned Error Codes:

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found.

  • ErrCodeInvalidArgumentException "InvalidArgumentException" The specified input parameter has an value that is not valid.

  • ErrCodeServiceUnavailableException "ServiceUnavailableException" The service is unavailable, back off and retry the operation. If you continue to see the exception, throughput limits for the delivery stream may have been exceeded. For more information about limits and how to request an increase, see Amazon Kinesis Firehose Limits (http://docs.aws.amazon.com/firehose/latest/dev/limits.html).

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecordBatch

func (*Firehose) PutRecordBatchRequest

func (c *Firehose) PutRecordBatchRequest(input *PutRecordBatchInput) (req *request.Request, output *PutRecordBatchOutput)

PutRecordBatchRequest generates a "aws/request.Request" representing the client's request for the PutRecordBatch operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See PutRecordBatch for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the PutRecordBatch method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the PutRecordBatchRequest method.
req, resp := client.PutRecordBatchRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecordBatch

func (*Firehose) PutRecordBatchWithContext

func (c *Firehose) PutRecordBatchWithContext(ctx aws.Context, input *PutRecordBatchInput, opts ...request.Option) (*PutRecordBatchOutput, error)

PutRecordBatchWithContext is the same as PutRecordBatch with the addition of the ability to pass a context and additional request options.

See PutRecordBatch for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Firehose) PutRecordRequest

func (c *Firehose) PutRecordRequest(input *PutRecordInput) (req *request.Request, output *PutRecordOutput)

PutRecordRequest generates a "aws/request.Request" representing the client's request for the PutRecord operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See PutRecord for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the PutRecord method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the PutRecordRequest method.
req, resp := client.PutRecordRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecord

func (*Firehose) PutRecordWithContext

func (c *Firehose) PutRecordWithContext(ctx aws.Context, input *PutRecordInput, opts ...request.Option) (*PutRecordOutput, error)

PutRecordWithContext is the same as PutRecord with the addition of the ability to pass a context and additional request options.

See PutRecord for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*Firehose) UpdateDestination

func (c *Firehose) UpdateDestination(input *UpdateDestinationInput) (*UpdateDestinationOutput, error)

UpdateDestination API operation for Amazon Kinesis Firehose.

Updates the specified destination of the specified delivery stream.

You can use this operation to change the destination type (for example, to replace the Amazon S3 destination with Amazon Redshift) or change the parameters associated with a destination (for example, to change the bucket name of the Amazon S3 destination). The update might not occur immediately. The target delivery stream remains active while the configurations are updated, so data writes to the delivery stream can continue during this process. The updated configurations are usually effective within a few minutes.

Note that switching between Amazon ES and other services is not supported. For an Amazon ES destination, you can only update to another Amazon ES destination.

If the destination type is the same, Firehose merges the configuration parameters specified with the destination configuration that already exists on the delivery stream. If any of the parameters are not specified in the call, the existing values are retained. For example, in the Amazon S3 destination, if EncryptionConfiguration is not specified then the existing EncryptionConfiguration is maintained on the destination.

If the destination type is not the same, for example, changing the destination from Amazon S3 to Amazon Redshift, Firehose does not merge any parameters. In this case, all parameters must be specified.

Firehose uses CurrentDeliveryStreamVersionId to avoid race conditions and conflicting merges. This is a required field, and the service updates the configuration only if the existing configuration has a version ID that matches. After the update is applied successfully, the version ID is updated, and can be retrieved using DescribeDeliveryStream. You should use the new version ID to set CurrentDeliveryStreamVersionId in the next call.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for Amazon Kinesis Firehose's API operation UpdateDestination for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidArgumentException "InvalidArgumentException" The specified input parameter has an value that is not valid.

  • ErrCodeResourceInUseException "ResourceInUseException" The resource is already in use and not available for this operation.

  • ErrCodeResourceNotFoundException "ResourceNotFoundException" The specified resource could not be found.

  • ErrCodeConcurrentModificationException "ConcurrentModificationException" Another modification has already happened. Fetch VersionId again and use it to update the destination.

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/UpdateDestination

func (*Firehose) UpdateDestinationRequest

func (c *Firehose) UpdateDestinationRequest(input *UpdateDestinationInput) (req *request.Request, output *UpdateDestinationOutput)

UpdateDestinationRequest generates a "aws/request.Request" representing the client's request for the UpdateDestination operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See UpdateDestination for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the UpdateDestination method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the UpdateDestinationRequest method.
req, resp := client.UpdateDestinationRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/UpdateDestination

func (*Firehose) UpdateDestinationWithContext

func (c *Firehose) UpdateDestinationWithContext(ctx aws.Context, input *UpdateDestinationInput, opts ...request.Option) (*UpdateDestinationOutput, error)

UpdateDestinationWithContext is the same as UpdateDestination with the addition of the ability to pass a context and additional request options.

See UpdateDestination for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

type KMSEncryptionConfig

type KMSEncryptionConfig struct {

	// The ARN of the encryption key. Must belong to the same region as the destination
	// Amazon S3 bucket.
	//
	// AWSKMSKeyARN is a required field
	AWSKMSKeyARN *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes an encryption key for a destination in Amazon S3. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/KMSEncryptionConfig

func (KMSEncryptionConfig) GoString

func (s KMSEncryptionConfig) GoString() string

GoString returns the string representation

func (*KMSEncryptionConfig) SetAWSKMSKeyARN

func (s *KMSEncryptionConfig) SetAWSKMSKeyARN(v string) *KMSEncryptionConfig

SetAWSKMSKeyARN sets the AWSKMSKeyARN field's value.

func (KMSEncryptionConfig) String

func (s KMSEncryptionConfig) String() string

String returns the string representation

func (*KMSEncryptionConfig) Validate

func (s *KMSEncryptionConfig) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListDeliveryStreamsInput

type ListDeliveryStreamsInput struct {

	// The name of the delivery stream to start the list with.
	ExclusiveStartDeliveryStreamName *string `min:"1" type:"string"`

	// The maximum number of delivery streams to list.
	Limit *int64 `min:"1" type:"integer"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ListDeliveryStreamsInput

func (ListDeliveryStreamsInput) GoString

func (s ListDeliveryStreamsInput) GoString() string

GoString returns the string representation

func (*ListDeliveryStreamsInput) SetExclusiveStartDeliveryStreamName

func (s *ListDeliveryStreamsInput) SetExclusiveStartDeliveryStreamName(v string) *ListDeliveryStreamsInput

SetExclusiveStartDeliveryStreamName sets the ExclusiveStartDeliveryStreamName field's value.

func (*ListDeliveryStreamsInput) SetLimit

SetLimit sets the Limit field's value.

func (ListDeliveryStreamsInput) String

func (s ListDeliveryStreamsInput) String() string

String returns the string representation

func (*ListDeliveryStreamsInput) Validate

func (s *ListDeliveryStreamsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListDeliveryStreamsOutput

type ListDeliveryStreamsOutput struct {

	// The names of the delivery streams.
	//
	// DeliveryStreamNames is a required field
	DeliveryStreamNames []*string `type:"list" required:"true"`

	// Indicates whether there are more delivery streams available to list.
	//
	// HasMoreDeliveryStreams is a required field
	HasMoreDeliveryStreams *bool `type:"boolean" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ListDeliveryStreamsOutput

func (ListDeliveryStreamsOutput) GoString

func (s ListDeliveryStreamsOutput) GoString() string

GoString returns the string representation

func (*ListDeliveryStreamsOutput) SetDeliveryStreamNames

func (s *ListDeliveryStreamsOutput) SetDeliveryStreamNames(v []*string) *ListDeliveryStreamsOutput

SetDeliveryStreamNames sets the DeliveryStreamNames field's value.

func (*ListDeliveryStreamsOutput) SetHasMoreDeliveryStreams

func (s *ListDeliveryStreamsOutput) SetHasMoreDeliveryStreams(v bool) *ListDeliveryStreamsOutput

SetHasMoreDeliveryStreams sets the HasMoreDeliveryStreams field's value.

func (ListDeliveryStreamsOutput) String

func (s ListDeliveryStreamsOutput) String() string

String returns the string representation

type ProcessingConfiguration

type ProcessingConfiguration struct {

	// Enables or disables data processing.
	Enabled *bool `type:"boolean"`

	// The data processors.
	Processors []*Processor `type:"list"`
	// contains filtered or unexported fields
}

Describes a data processing configuration. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ProcessingConfiguration

func (ProcessingConfiguration) GoString

func (s ProcessingConfiguration) GoString() string

GoString returns the string representation

func (*ProcessingConfiguration) SetEnabled

SetEnabled sets the Enabled field's value.

func (*ProcessingConfiguration) SetProcessors

SetProcessors sets the Processors field's value.

func (ProcessingConfiguration) String

func (s ProcessingConfiguration) String() string

String returns the string representation

func (*ProcessingConfiguration) Validate

func (s *ProcessingConfiguration) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Processor

type Processor struct {

	// The processor parameters.
	Parameters []*ProcessorParameter `type:"list"`

	// The type of processor.
	//
	// Type is a required field
	Type *string `type:"string" required:"true" enum:"ProcessorType"`
	// contains filtered or unexported fields
}

Describes a data processor. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/Processor

func (Processor) GoString

func (s Processor) GoString() string

GoString returns the string representation

func (*Processor) SetParameters

func (s *Processor) SetParameters(v []*ProcessorParameter) *Processor

SetParameters sets the Parameters field's value.

func (*Processor) SetType

func (s *Processor) SetType(v string) *Processor

SetType sets the Type field's value.

func (Processor) String

func (s Processor) String() string

String returns the string representation

func (*Processor) Validate

func (s *Processor) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ProcessorParameter

type ProcessorParameter struct {

	// The name of the parameter.
	//
	// ParameterName is a required field
	ParameterName *string `type:"string" required:"true" enum:"ProcessorParameterName"`

	// The parameter value.
	//
	// ParameterValue is a required field
	ParameterValue *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes the processor parameter. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/ProcessorParameter

func (ProcessorParameter) GoString

func (s ProcessorParameter) GoString() string

GoString returns the string representation

func (*ProcessorParameter) SetParameterName

func (s *ProcessorParameter) SetParameterName(v string) *ProcessorParameter

SetParameterName sets the ParameterName field's value.

func (*ProcessorParameter) SetParameterValue

func (s *ProcessorParameter) SetParameterValue(v string) *ProcessorParameter

SetParameterValue sets the ParameterValue field's value.

func (ProcessorParameter) String

func (s ProcessorParameter) String() string

String returns the string representation

func (*ProcessorParameter) Validate

func (s *ProcessorParameter) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutRecordBatchInput

type PutRecordBatchInput struct {

	// The name of the delivery stream.
	//
	// DeliveryStreamName is a required field
	DeliveryStreamName *string `min:"1" type:"string" required:"true"`

	// One or more records.
	//
	// Records is a required field
	Records []*Record `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecordBatchInput

func (PutRecordBatchInput) GoString

func (s PutRecordBatchInput) GoString() string

GoString returns the string representation

func (*PutRecordBatchInput) SetDeliveryStreamName

func (s *PutRecordBatchInput) SetDeliveryStreamName(v string) *PutRecordBatchInput

SetDeliveryStreamName sets the DeliveryStreamName field's value.

func (*PutRecordBatchInput) SetRecords

func (s *PutRecordBatchInput) SetRecords(v []*Record) *PutRecordBatchInput

SetRecords sets the Records field's value.

func (PutRecordBatchInput) String

func (s PutRecordBatchInput) String() string

String returns the string representation

func (*PutRecordBatchInput) Validate

func (s *PutRecordBatchInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutRecordBatchOutput

type PutRecordBatchOutput struct {

	// The number of records that might have failed processing.
	//
	// FailedPutCount is a required field
	FailedPutCount *int64 `type:"integer" required:"true"`

	// The results array. For each record, the index of the response element is
	// the same as the index used in the request array.
	//
	// RequestResponses is a required field
	RequestResponses []*PutRecordBatchResponseEntry `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecordBatchOutput

func (PutRecordBatchOutput) GoString

func (s PutRecordBatchOutput) GoString() string

GoString returns the string representation

func (*PutRecordBatchOutput) SetFailedPutCount

func (s *PutRecordBatchOutput) SetFailedPutCount(v int64) *PutRecordBatchOutput

SetFailedPutCount sets the FailedPutCount field's value.

func (*PutRecordBatchOutput) SetRequestResponses

SetRequestResponses sets the RequestResponses field's value.

func (PutRecordBatchOutput) String

func (s PutRecordBatchOutput) String() string

String returns the string representation

type PutRecordBatchResponseEntry

type PutRecordBatchResponseEntry struct {

	// The error code for an individual record result.
	ErrorCode *string `type:"string"`

	// The error message for an individual record result.
	ErrorMessage *string `type:"string"`

	// The ID of the record.
	RecordId *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Contains the result for an individual record from a PutRecordBatch request. If the record is successfully added to your delivery stream, it receives a record ID. If the record fails to be added to your delivery stream, the result includes an error code and an error message. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecordBatchResponseEntry

func (PutRecordBatchResponseEntry) GoString

func (s PutRecordBatchResponseEntry) GoString() string

GoString returns the string representation

func (*PutRecordBatchResponseEntry) SetErrorCode

SetErrorCode sets the ErrorCode field's value.

func (*PutRecordBatchResponseEntry) SetErrorMessage

SetErrorMessage sets the ErrorMessage field's value.

func (*PutRecordBatchResponseEntry) SetRecordId

SetRecordId sets the RecordId field's value.

func (PutRecordBatchResponseEntry) String

String returns the string representation

type PutRecordInput

type PutRecordInput struct {

	// The name of the delivery stream.
	//
	// DeliveryStreamName is a required field
	DeliveryStreamName *string `min:"1" type:"string" required:"true"`

	// The record.
	//
	// Record is a required field
	Record *Record `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecordInput

func (PutRecordInput) GoString

func (s PutRecordInput) GoString() string

GoString returns the string representation

func (*PutRecordInput) SetDeliveryStreamName

func (s *PutRecordInput) SetDeliveryStreamName(v string) *PutRecordInput

SetDeliveryStreamName sets the DeliveryStreamName field's value.

func (*PutRecordInput) SetRecord

func (s *PutRecordInput) SetRecord(v *Record) *PutRecordInput

SetRecord sets the Record field's value.

func (PutRecordInput) String

func (s PutRecordInput) String() string

String returns the string representation

func (*PutRecordInput) Validate

func (s *PutRecordInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutRecordOutput

type PutRecordOutput struct {

	// The ID of the record.
	//
	// RecordId is a required field
	RecordId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/PutRecordOutput

func (PutRecordOutput) GoString

func (s PutRecordOutput) GoString() string

GoString returns the string representation

func (*PutRecordOutput) SetRecordId

func (s *PutRecordOutput) SetRecordId(v string) *PutRecordOutput

SetRecordId sets the RecordId field's value.

func (PutRecordOutput) String

func (s PutRecordOutput) String() string

String returns the string representation

type Record

type Record struct {

	// The data blob, which is base64-encoded when the blob is serialized. The maximum
	// size of the data blob, before base64-encoding, is 1,000 KB.
	//
	// Data is automatically base64 encoded/decoded by the SDK.
	//
	// Data is a required field
	Data []byte `type:"blob" required:"true"`
	// contains filtered or unexported fields
}

The unit of data in a delivery stream. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/Record

func (Record) GoString

func (s Record) GoString() string

GoString returns the string representation

func (*Record) SetData

func (s *Record) SetData(v []byte) *Record

SetData sets the Data field's value.

func (Record) String

func (s Record) String() string

String returns the string representation

func (*Record) Validate

func (s *Record) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type RedshiftDestinationConfiguration

type RedshiftDestinationConfiguration struct {

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The database connection string.
	//
	// ClusterJDBCURL is a required field
	ClusterJDBCURL *string `min:"1" type:"string" required:"true"`

	// The COPY command.
	//
	// CopyCommand is a required field
	CopyCommand *CopyCommand `type:"structure" required:"true"`

	// The user password.
	//
	// Password is a required field
	Password *string `min:"6" type:"string" required:"true"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The retry behavior in the event that Firehose is unable to deliver documents
	// to Amazon Redshift. Default value is 3600 (60 minutes).
	RetryOptions *RedshiftRetryOptions `type:"structure"`

	// The ARN of the AWS credentials.
	//
	// RoleARN is a required field
	RoleARN *string `min:"1" type:"string" required:"true"`

	// The configuration for backup in Amazon S3.
	S3BackupConfiguration *S3DestinationConfiguration `type:"structure"`

	// The Amazon S3 backup mode.
	S3BackupMode *string `type:"string" enum:"RedshiftS3BackupMode"`

	// The configuration for the intermediate Amazon S3 location from which Amazon
	// Redshift obtains data. Restrictions are described in the topic for CreateDeliveryStream.
	//
	// The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationConfiguration.S3Configuration
	// because the Amazon Redshift COPY operation that reads from the S3 bucket
	// doesn't support these compression formats.
	//
	// S3Configuration is a required field
	S3Configuration *S3DestinationConfiguration `type:"structure" required:"true"`

	// The name of the user.
	//
	// Username is a required field
	Username *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes the configuration of a destination in Amazon Redshift. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/RedshiftDestinationConfiguration

func (RedshiftDestinationConfiguration) GoString

GoString returns the string representation

func (*RedshiftDestinationConfiguration) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*RedshiftDestinationConfiguration) SetClusterJDBCURL

SetClusterJDBCURL sets the ClusterJDBCURL field's value.

func (*RedshiftDestinationConfiguration) SetCopyCommand

SetCopyCommand sets the CopyCommand field's value.

func (*RedshiftDestinationConfiguration) SetPassword

SetPassword sets the Password field's value.

func (*RedshiftDestinationConfiguration) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*RedshiftDestinationConfiguration) SetRetryOptions

SetRetryOptions sets the RetryOptions field's value.

func (*RedshiftDestinationConfiguration) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*RedshiftDestinationConfiguration) SetS3BackupConfiguration

SetS3BackupConfiguration sets the S3BackupConfiguration field's value.

func (*RedshiftDestinationConfiguration) SetS3BackupMode

SetS3BackupMode sets the S3BackupMode field's value.

func (*RedshiftDestinationConfiguration) SetS3Configuration

SetS3Configuration sets the S3Configuration field's value.

func (*RedshiftDestinationConfiguration) SetUsername

SetUsername sets the Username field's value.

func (RedshiftDestinationConfiguration) String

String returns the string representation

func (*RedshiftDestinationConfiguration) Validate

Validate inspects the fields of the type to determine if they are valid.

type RedshiftDestinationDescription

type RedshiftDestinationDescription struct {

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The database connection string.
	//
	// ClusterJDBCURL is a required field
	ClusterJDBCURL *string `min:"1" type:"string" required:"true"`

	// The COPY command.
	//
	// CopyCommand is a required field
	CopyCommand *CopyCommand `type:"structure" required:"true"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The retry behavior in the event that Firehose is unable to deliver documents
	// to Amazon Redshift. Default value is 3600 (60 minutes).
	RetryOptions *RedshiftRetryOptions `type:"structure"`

	// The ARN of the AWS credentials.
	//
	// RoleARN is a required field
	RoleARN *string `min:"1" type:"string" required:"true"`

	// The configuration for backup in Amazon S3.
	S3BackupDescription *S3DestinationDescription `type:"structure"`

	// The Amazon S3 backup mode.
	S3BackupMode *string `type:"string" enum:"RedshiftS3BackupMode"`

	// The Amazon S3 destination.
	//
	// S3DestinationDescription is a required field
	S3DestinationDescription *S3DestinationDescription `type:"structure" required:"true"`

	// The name of the user.
	//
	// Username is a required field
	Username *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes a destination in Amazon Redshift. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/RedshiftDestinationDescription

func (RedshiftDestinationDescription) GoString

GoString returns the string representation

func (*RedshiftDestinationDescription) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*RedshiftDestinationDescription) SetClusterJDBCURL

SetClusterJDBCURL sets the ClusterJDBCURL field's value.

func (*RedshiftDestinationDescription) SetCopyCommand

SetCopyCommand sets the CopyCommand field's value.

func (*RedshiftDestinationDescription) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*RedshiftDestinationDescription) SetRetryOptions

SetRetryOptions sets the RetryOptions field's value.

func (*RedshiftDestinationDescription) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*RedshiftDestinationDescription) SetS3BackupDescription

SetS3BackupDescription sets the S3BackupDescription field's value.

func (*RedshiftDestinationDescription) SetS3BackupMode

SetS3BackupMode sets the S3BackupMode field's value.

func (*RedshiftDestinationDescription) SetS3DestinationDescription

SetS3DestinationDescription sets the S3DestinationDescription field's value.

func (*RedshiftDestinationDescription) SetUsername

SetUsername sets the Username field's value.

func (RedshiftDestinationDescription) String

String returns the string representation

type RedshiftDestinationUpdate

type RedshiftDestinationUpdate struct {

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The database connection string.
	ClusterJDBCURL *string `min:"1" type:"string"`

	// The COPY command.
	CopyCommand *CopyCommand `type:"structure"`

	// The user password.
	Password *string `min:"6" type:"string"`

	// The data processing configuration.
	ProcessingConfiguration *ProcessingConfiguration `type:"structure"`

	// The retry behavior in the event that Firehose is unable to deliver documents
	// to Amazon Redshift. Default value is 3600 (60 minutes).
	RetryOptions *RedshiftRetryOptions `type:"structure"`

	// The ARN of the AWS credentials.
	RoleARN *string `min:"1" type:"string"`

	// The Amazon S3 backup mode.
	S3BackupMode *string `type:"string" enum:"RedshiftS3BackupMode"`

	// The Amazon S3 destination for backup.
	S3BackupUpdate *S3DestinationUpdate `type:"structure"`

	// The Amazon S3 destination.
	//
	// The compression formats SNAPPY or ZIP cannot be specified in RedshiftDestinationUpdate.S3Update
	// because the Amazon Redshift COPY operation that reads from the S3 bucket
	// doesn't support these compression formats.
	S3Update *S3DestinationUpdate `type:"structure"`

	// The name of the user.
	Username *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Describes an update for a destination in Amazon Redshift. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/RedshiftDestinationUpdate

func (RedshiftDestinationUpdate) GoString

func (s RedshiftDestinationUpdate) GoString() string

GoString returns the string representation

func (*RedshiftDestinationUpdate) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*RedshiftDestinationUpdate) SetClusterJDBCURL

SetClusterJDBCURL sets the ClusterJDBCURL field's value.

func (*RedshiftDestinationUpdate) SetCopyCommand

SetCopyCommand sets the CopyCommand field's value.

func (*RedshiftDestinationUpdate) SetPassword

SetPassword sets the Password field's value.

func (*RedshiftDestinationUpdate) SetProcessingConfiguration

SetProcessingConfiguration sets the ProcessingConfiguration field's value.

func (*RedshiftDestinationUpdate) SetRetryOptions

SetRetryOptions sets the RetryOptions field's value.

func (*RedshiftDestinationUpdate) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (*RedshiftDestinationUpdate) SetS3BackupMode

SetS3BackupMode sets the S3BackupMode field's value.

func (*RedshiftDestinationUpdate) SetS3BackupUpdate

SetS3BackupUpdate sets the S3BackupUpdate field's value.

func (*RedshiftDestinationUpdate) SetS3Update

SetS3Update sets the S3Update field's value.

func (*RedshiftDestinationUpdate) SetUsername

SetUsername sets the Username field's value.

func (RedshiftDestinationUpdate) String

func (s RedshiftDestinationUpdate) String() string

String returns the string representation

func (*RedshiftDestinationUpdate) Validate

func (s *RedshiftDestinationUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type RedshiftRetryOptions

type RedshiftRetryOptions struct {

	// The length of time during which Firehose retries delivery after a failure,
	// starting from the initial request and including the first attempt. The default
	// value is 3600 seconds (60 minutes). Firehose does not retry if the value
	// of DurationInSeconds is 0 (zero) or if the first delivery attempt takes longer
	// than the current value.
	DurationInSeconds *int64 `type:"integer"`
	// contains filtered or unexported fields
}

Configures retry behavior in the event that Firehose is unable to deliver documents to Amazon Redshift. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/RedshiftRetryOptions

func (RedshiftRetryOptions) GoString

func (s RedshiftRetryOptions) GoString() string

GoString returns the string representation

func (*RedshiftRetryOptions) SetDurationInSeconds

func (s *RedshiftRetryOptions) SetDurationInSeconds(v int64) *RedshiftRetryOptions

SetDurationInSeconds sets the DurationInSeconds field's value.

func (RedshiftRetryOptions) String

func (s RedshiftRetryOptions) String() string

String returns the string representation

type S3DestinationConfiguration

type S3DestinationConfiguration struct {

	// The ARN of the S3 bucket.
	//
	// BucketARN is a required field
	BucketARN *string `min:"1" type:"string" required:"true"`

	// The buffering option. If no value is specified, BufferingHints object default
	// values are used.
	BufferingHints *BufferingHints `type:"structure"`

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED.
	//
	// The compression formats SNAPPY or ZIP cannot be specified for Amazon Redshift
	// destinations because they are not supported by the Amazon Redshift COPY operation
	// that reads from the S3 bucket.
	CompressionFormat *string `type:"string" enum:"CompressionFormat"`

	// The encryption configuration. If no value is specified, the default is no
	// encryption.
	EncryptionConfiguration *EncryptionConfiguration `type:"structure"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered
	// S3 files. You can specify an extra prefix to be added in front of the time
	// format prefix. Note that if the prefix ends with a slash, it appears as a
	// folder in the S3 bucket. For more information, see Amazon S3 Object Name
	// Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html)
	// in the Amazon Kinesis Firehose Developer Guide.
	Prefix *string `type:"string"`

	// The ARN of the AWS credentials.
	//
	// RoleARN is a required field
	RoleARN *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes the configuration of a destination in Amazon S3. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/S3DestinationConfiguration

func (S3DestinationConfiguration) GoString

func (s S3DestinationConfiguration) GoString() string

GoString returns the string representation

func (*S3DestinationConfiguration) SetBucketARN

SetBucketARN sets the BucketARN field's value.

func (*S3DestinationConfiguration) SetBufferingHints

SetBufferingHints sets the BufferingHints field's value.

func (*S3DestinationConfiguration) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*S3DestinationConfiguration) SetCompressionFormat

func (s *S3DestinationConfiguration) SetCompressionFormat(v string) *S3DestinationConfiguration

SetCompressionFormat sets the CompressionFormat field's value.

func (*S3DestinationConfiguration) SetEncryptionConfiguration

SetEncryptionConfiguration sets the EncryptionConfiguration field's value.

func (*S3DestinationConfiguration) SetPrefix

SetPrefix sets the Prefix field's value.

func (*S3DestinationConfiguration) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (S3DestinationConfiguration) String

String returns the string representation

func (*S3DestinationConfiguration) Validate

func (s *S3DestinationConfiguration) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type S3DestinationDescription

type S3DestinationDescription struct {

	// The ARN of the S3 bucket.
	//
	// BucketARN is a required field
	BucketARN *string `min:"1" type:"string" required:"true"`

	// The buffering option. If no value is specified, BufferingHints object default
	// values are used.
	//
	// BufferingHints is a required field
	BufferingHints *BufferingHints `type:"structure" required:"true"`

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED.
	//
	// CompressionFormat is a required field
	CompressionFormat *string `type:"string" required:"true" enum:"CompressionFormat"`

	// The encryption configuration. If no value is specified, the default is no
	// encryption.
	//
	// EncryptionConfiguration is a required field
	EncryptionConfiguration *EncryptionConfiguration `type:"structure" required:"true"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered
	// S3 files. You can specify an extra prefix to be added in front of the time
	// format prefix. Note that if the prefix ends with a slash, it appears as a
	// folder in the S3 bucket. For more information, see Amazon S3 Object Name
	// Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html)
	// in the Amazon Kinesis Firehose Developer Guide.
	Prefix *string `type:"string"`

	// The ARN of the AWS credentials.
	//
	// RoleARN is a required field
	RoleARN *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Describes a destination in Amazon S3. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/S3DestinationDescription

func (S3DestinationDescription) GoString

func (s S3DestinationDescription) GoString() string

GoString returns the string representation

func (*S3DestinationDescription) SetBucketARN

SetBucketARN sets the BucketARN field's value.

func (*S3DestinationDescription) SetBufferingHints

SetBufferingHints sets the BufferingHints field's value.

func (*S3DestinationDescription) SetCloudWatchLoggingOptions

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*S3DestinationDescription) SetCompressionFormat

func (s *S3DestinationDescription) SetCompressionFormat(v string) *S3DestinationDescription

SetCompressionFormat sets the CompressionFormat field's value.

func (*S3DestinationDescription) SetEncryptionConfiguration

SetEncryptionConfiguration sets the EncryptionConfiguration field's value.

func (*S3DestinationDescription) SetPrefix

SetPrefix sets the Prefix field's value.

func (*S3DestinationDescription) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (S3DestinationDescription) String

func (s S3DestinationDescription) String() string

String returns the string representation

type S3DestinationUpdate

type S3DestinationUpdate struct {

	// The ARN of the S3 bucket.
	BucketARN *string `min:"1" type:"string"`

	// The buffering option. If no value is specified, BufferingHints object default
	// values are used.
	BufferingHints *BufferingHints `type:"structure"`

	// The CloudWatch logging options for your delivery stream.
	CloudWatchLoggingOptions *CloudWatchLoggingOptions `type:"structure"`

	// The compression format. If no value is specified, the default is UNCOMPRESSED.
	//
	// The compression formats SNAPPY or ZIP cannot be specified for Amazon Redshift
	// destinations because they are not supported by the Amazon Redshift COPY operation
	// that reads from the S3 bucket.
	CompressionFormat *string `type:"string" enum:"CompressionFormat"`

	// The encryption configuration. If no value is specified, the default is no
	// encryption.
	EncryptionConfiguration *EncryptionConfiguration `type:"structure"`

	// The "YYYY/MM/DD/HH" time format prefix is automatically used for delivered
	// S3 files. You can specify an extra prefix to be added in front of the time
	// format prefix. Note that if the prefix ends with a slash, it appears as a
	// folder in the S3 bucket. For more information, see Amazon S3 Object Name
	// Format (http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html)
	// in the Amazon Kinesis Firehose Developer Guide.
	Prefix *string `type:"string"`

	// The ARN of the AWS credentials.
	RoleARN *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

Describes an update for a destination in Amazon S3. Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/S3DestinationUpdate

func (S3DestinationUpdate) GoString

func (s S3DestinationUpdate) GoString() string

GoString returns the string representation

func (*S3DestinationUpdate) SetBucketARN

func (s *S3DestinationUpdate) SetBucketARN(v string) *S3DestinationUpdate

SetBucketARN sets the BucketARN field's value.

func (*S3DestinationUpdate) SetBufferingHints

func (s *S3DestinationUpdate) SetBufferingHints(v *BufferingHints) *S3DestinationUpdate

SetBufferingHints sets the BufferingHints field's value.

func (*S3DestinationUpdate) SetCloudWatchLoggingOptions

func (s *S3DestinationUpdate) SetCloudWatchLoggingOptions(v *CloudWatchLoggingOptions) *S3DestinationUpdate

SetCloudWatchLoggingOptions sets the CloudWatchLoggingOptions field's value.

func (*S3DestinationUpdate) SetCompressionFormat

func (s *S3DestinationUpdate) SetCompressionFormat(v string) *S3DestinationUpdate

SetCompressionFormat sets the CompressionFormat field's value.

func (*S3DestinationUpdate) SetEncryptionConfiguration

func (s *S3DestinationUpdate) SetEncryptionConfiguration(v *EncryptionConfiguration) *S3DestinationUpdate

SetEncryptionConfiguration sets the EncryptionConfiguration field's value.

func (*S3DestinationUpdate) SetPrefix

SetPrefix sets the Prefix field's value.

func (*S3DestinationUpdate) SetRoleARN

SetRoleARN sets the RoleARN field's value.

func (S3DestinationUpdate) String

func (s S3DestinationUpdate) String() string

String returns the string representation

func (*S3DestinationUpdate) Validate

func (s *S3DestinationUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateDestinationInput

type UpdateDestinationInput struct {

	// Obtain this value from the VersionId result of DeliveryStreamDescription.
	// This value is required, and helps the service to perform conditional operations.
	// For example, if there is a interleaving update and this value is null, then
	// the update destination fails. After the update is successful, the VersionId
	// value is updated. The service then performs a merge of the old configuration
	// with the new configuration.
	//
	// CurrentDeliveryStreamVersionId is a required field
	CurrentDeliveryStreamVersionId *string `min:"1" type:"string" required:"true"`

	// The name of the delivery stream.
	//
	// DeliveryStreamName is a required field
	DeliveryStreamName *string `min:"1" type:"string" required:"true"`

	// The ID of the destination.
	//
	// DestinationId is a required field
	DestinationId *string `min:"1" type:"string" required:"true"`

	// Describes an update for a destination in Amazon ES.
	ElasticsearchDestinationUpdate *ElasticsearchDestinationUpdate `type:"structure"`

	// Describes an update for a destination in Amazon S3.
	ExtendedS3DestinationUpdate *ExtendedS3DestinationUpdate `type:"structure"`

	// Describes an update for a destination in Amazon Redshift.
	RedshiftDestinationUpdate *RedshiftDestinationUpdate `type:"structure"`

	// [Deprecated] Describes an update for a destination in Amazon S3.
	S3DestinationUpdate *S3DestinationUpdate `deprecated:"true" type:"structure"`
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/UpdateDestinationInput

func (UpdateDestinationInput) GoString

func (s UpdateDestinationInput) GoString() string

GoString returns the string representation

func (*UpdateDestinationInput) SetCurrentDeliveryStreamVersionId

func (s *UpdateDestinationInput) SetCurrentDeliveryStreamVersionId(v string) *UpdateDestinationInput

SetCurrentDeliveryStreamVersionId sets the CurrentDeliveryStreamVersionId field's value.

func (*UpdateDestinationInput) SetDeliveryStreamName

func (s *UpdateDestinationInput) SetDeliveryStreamName(v string) *UpdateDestinationInput

SetDeliveryStreamName sets the DeliveryStreamName field's value.

func (*UpdateDestinationInput) SetDestinationId

func (s *UpdateDestinationInput) SetDestinationId(v string) *UpdateDestinationInput

SetDestinationId sets the DestinationId field's value.

func (*UpdateDestinationInput) SetElasticsearchDestinationUpdate

func (s *UpdateDestinationInput) SetElasticsearchDestinationUpdate(v *ElasticsearchDestinationUpdate) *UpdateDestinationInput

SetElasticsearchDestinationUpdate sets the ElasticsearchDestinationUpdate field's value.

func (*UpdateDestinationInput) SetExtendedS3DestinationUpdate

func (s *UpdateDestinationInput) SetExtendedS3DestinationUpdate(v *ExtendedS3DestinationUpdate) *UpdateDestinationInput

SetExtendedS3DestinationUpdate sets the ExtendedS3DestinationUpdate field's value.

func (*UpdateDestinationInput) SetRedshiftDestinationUpdate

func (s *UpdateDestinationInput) SetRedshiftDestinationUpdate(v *RedshiftDestinationUpdate) *UpdateDestinationInput

SetRedshiftDestinationUpdate sets the RedshiftDestinationUpdate field's value.

func (*UpdateDestinationInput) SetS3DestinationUpdate

func (s *UpdateDestinationInput) SetS3DestinationUpdate(v *S3DestinationUpdate) *UpdateDestinationInput

SetS3DestinationUpdate sets the S3DestinationUpdate field's value.

func (UpdateDestinationInput) String

func (s UpdateDestinationInput) String() string

String returns the string representation

func (*UpdateDestinationInput) Validate

func (s *UpdateDestinationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateDestinationOutput

type UpdateDestinationOutput struct {
	// contains filtered or unexported fields
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/firehose-2015-08-04/UpdateDestinationOutput

func (UpdateDestinationOutput) GoString

func (s UpdateDestinationOutput) GoString() string

GoString returns the string representation

func (UpdateDestinationOutput) String

func (s UpdateDestinationOutput) String() string

String returns the string representation

Directories

Path Synopsis
Package firehoseiface provides an interface to enable mocking the Amazon Kinesis Firehose service client for testing your code.
Package firehoseiface provides an interface to enable mocking the Amazon Kinesis Firehose service client for testing your code.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL