aws-sdk-firehose 1.0.0.rc1 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,23 +1,14 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module Firehose
10
- module Errors
8
+ module Aws::Firehose
9
+ module Errors
11
10
 
12
- extend Aws::Errors::DynamicErrors
11
+ extend Aws::Errors::DynamicErrors
13
12
 
14
- # Raised when calling #load or #data on a resource class that can not be
15
- # loaded. This can happen when:
16
- #
17
- # * A resource class has identifiers, but no data attributes.
18
- # * Resource data is only available when making an API call that
19
- # enumerates all resources of that type.
20
- class ResourceNotLoadable < RuntimeError; end
21
- end
22
13
  end
23
14
  end
@@ -1,25 +1,23 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module Firehose
10
- class Resource
8
+ module Aws::Firehose
9
+ class Resource
11
10
 
12
- # @param options ({})
13
- # @option options [Client] :client
14
- def initialize(options = {})
15
- @client = options[:client] || Client.new(options)
16
- end
17
-
18
- # @return [Client]
19
- def client
20
- @client
21
- end
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
22
16
 
17
+ # @return [Client]
18
+ def client
19
+ @client
23
20
  end
21
+
24
22
  end
25
23
  end
@@ -1,1547 +1,2400 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module Firehose
10
- module Types
8
+ module Aws::Firehose
9
+ module Types
11
10
 
12
- # Describes hints for the buffering to perform before delivering data to
13
- # the destination. Please note that these options are treated as hints,
14
- # and therefore Firehose may choose to use different values when it is
15
- # optimal.
16
- # @note When making an API call, pass BufferingHints
17
- # data as a hash:
18
- #
19
- # {
20
- # size_in_m_bs: 1,
21
- # interval_in_seconds: 1,
22
- # }
23
- # @!attribute [rw] size_in_m_bs
24
- # Buffer incoming data to the specified size, in MBs, before
25
- # delivering it to the destination. The default value is 5.
26
- #
27
- # We recommend setting SizeInMBs to a value greater than the amount of
28
- # data you typically ingest into the delivery stream in 10 seconds.
29
- # For example, if you typically ingest data at 1 MB/sec set SizeInMBs
30
- # to be 10 MB or higher.
31
- # @return [Integer]
32
- #
33
- # @!attribute [rw] interval_in_seconds
34
- # Buffer incoming data for the specified period of time, in seconds,
35
- # before delivering it to the destination. The default value is 300.
36
- # @return [Integer]
37
- class BufferingHints < Struct.new(
38
- :size_in_m_bs,
39
- :interval_in_seconds)
40
- include Aws::Structure
41
- end
11
+ # Describes hints for the buffering to perform before delivering data to
12
+ # the destination. Please note that these options are treated as hints,
13
+ # and therefore Firehose may choose to use different values when it is
14
+ # optimal.
15
+ #
16
+ # @note When making an API call, you may pass BufferingHints
17
+ # data as a hash:
18
+ #
19
+ # {
20
+ # size_in_m_bs: 1,
21
+ # interval_in_seconds: 1,
22
+ # }
23
+ #
24
+ # @!attribute [rw] size_in_m_bs
25
+ # Buffer incoming data to the specified size, in MBs, before
26
+ # delivering it to the destination. The default value is 5.
27
+ #
28
+ # We recommend setting this parameter to a value greater than the
29
+ # amount of data you typically ingest into the delivery stream in 10
30
+ # seconds. For example, if you typically ingest data at 1 MB/sec, the
31
+ # value should be 10 MB or higher.
32
+ # @return [Integer]
33
+ #
34
+ # @!attribute [rw] interval_in_seconds
35
+ # Buffer incoming data for the specified period of time, in seconds,
36
+ # before delivering it to the destination. The default value is 300.
37
+ # @return [Integer]
38
+ #
39
+ class BufferingHints < Struct.new(
40
+ :size_in_m_bs,
41
+ :interval_in_seconds)
42
+ include Aws::Structure
43
+ end
44
+
45
+ # Describes the CloudWatch logging options for your delivery stream.
46
+ #
47
+ # @note When making an API call, you may pass CloudWatchLoggingOptions
48
+ # data as a hash:
49
+ #
50
+ # {
51
+ # enabled: false,
52
+ # log_group_name: "LogGroupName",
53
+ # log_stream_name: "LogStreamName",
54
+ # }
55
+ #
56
+ # @!attribute [rw] enabled
57
+ # Enables or disables CloudWatch logging.
58
+ # @return [Boolean]
59
+ #
60
+ # @!attribute [rw] log_group_name
61
+ # The CloudWatch group name for logging. This value is required if
62
+ # CloudWatch logging is enabled.
63
+ # @return [String]
64
+ #
65
+ # @!attribute [rw] log_stream_name
66
+ # The CloudWatch log stream name for logging. This value is required
67
+ # if CloudWatch logging is enabled.
68
+ # @return [String]
69
+ #
70
+ class CloudWatchLoggingOptions < Struct.new(
71
+ :enabled,
72
+ :log_group_name,
73
+ :log_stream_name)
74
+ include Aws::Structure
75
+ end
42
76
 
43
- # Describes CloudWatch logging options for your delivery stream.
44
- # @note When making an API call, pass CloudWatchLoggingOptions
45
- # data as a hash:
46
- #
47
- # {
48
- # enabled: false,
49
- # log_group_name: "LogGroupName",
50
- # log_stream_name: "LogStreamName",
51
- # }
52
- # @!attribute [rw] enabled
53
- # Enables or disables CloudWatch logging.
54
- # @return [Boolean]
55
- #
56
- # @!attribute [rw] log_group_name
57
- # The CloudWatch group name for logging. This value is required if
58
- # Enabled is true.
59
- # @return [String]
60
- #
61
- # @!attribute [rw] log_stream_name
62
- # The CloudWatch log stream name for logging. This value is required
63
- # if Enabled is true.
64
- # @return [String]
65
- class CloudWatchLoggingOptions < Struct.new(
66
- :enabled,
67
- :log_group_name,
68
- :log_stream_name)
69
- include Aws::Structure
70
- end
77
+ # Describes a `COPY` command for Amazon Redshift.
78
+ #
79
+ # @note When making an API call, you may pass CopyCommand
80
+ # data as a hash:
81
+ #
82
+ # {
83
+ # data_table_name: "DataTableName", # required
84
+ # data_table_columns: "DataTableColumns",
85
+ # copy_options: "CopyOptions",
86
+ # }
87
+ #
88
+ # @!attribute [rw] data_table_name
89
+ # The name of the target table. The table must already exist in the
90
+ # database.
91
+ # @return [String]
92
+ #
93
+ # @!attribute [rw] data_table_columns
94
+ # A comma-separated list of column names.
95
+ # @return [String]
96
+ #
97
+ # @!attribute [rw] copy_options
98
+ # Optional parameters to use with the Amazon Redshift `COPY` command.
99
+ # For more information, see the "Optional Parameters" section of
100
+ # [Amazon Redshift COPY command][1]. Some possible examples that would
101
+ # apply to Firehose are as follows:
102
+ #
103
+ # `delimiter '\t' lzop;` - fields are delimited with "\\t" (TAB
104
+ # character) and compressed using lzop.
105
+ #
106
+ # `delimiter '|` - fields are delimited with "\|" (this is the
107
+ # default delimiter).
108
+ #
109
+ # `delimiter '|' escape` - the delimiter should be escaped.
110
+ #
111
+ # `fixedwidth
112
+ # 'venueid:3,venuename:25,venuecity:12,venuestate:2,venueseats:6'` -
113
+ # fields are fixed width in the source, with each width specified
114
+ # after every column in the table.
115
+ #
116
+ # `JSON 's3://mybucket/jsonpaths.txt'` - data is in JSON format, and
117
+ # the path specified is the format of the data.
118
+ #
119
+ # For more examples, see [Amazon Redshift COPY command examples][2].
120
+ #
121
+ #
122
+ #
123
+ # [1]: http://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html
124
+ # [2]: http://docs.aws.amazon.com/redshift/latest/dg/r_COPY_command_examples.html
125
+ # @return [String]
126
+ #
127
+ class CopyCommand < Struct.new(
128
+ :data_table_name,
129
+ :data_table_columns,
130
+ :copy_options)
131
+ include Aws::Structure
132
+ end
71
133
 
72
- # Describes a `COPY` command for Amazon Redshift.
73
- # @note When making an API call, pass CopyCommand
74
- # data as a hash:
75
- #
76
- # {
77
- # data_table_name: "DataTableName", # required
78
- # data_table_columns: "DataTableColumns",
79
- # copy_options: "CopyOptions",
80
- # }
81
- # @!attribute [rw] data_table_name
82
- # The name of the target table. The table must already exist in the
83
- # database.
84
- # @return [String]
85
- #
86
- # @!attribute [rw] data_table_columns
87
- # A comma-separated list of column names.
88
- # @return [String]
89
- #
90
- # @!attribute [rw] copy_options
91
- # Optional parameters to use with the Amazon Redshift `COPY` command.
92
- # For more information, see the "Optional Parameters" section of
93
- # [Amazon Redshift COPY command][1]. Some possible examples that would
94
- # apply to Firehose are as follows.
95
- #
96
- # `delimiter '\t' lzop;` - fields are delimited with "\\t" (TAB
97
- # character) and compressed using lzop.
98
- #
99
- # `delimiter '|` - fields are delimited with "\|" (this is the
100
- # default delimiter).
101
- #
102
- # `delimiter '|' escape` - the delimiter should be escaped.
103
- #
104
- # `fixedwidth
105
- # 'venueid:3,venuename:25,venuecity:12,venuestate:2,venueseats:6'` -
106
- # fields are fixed width in the source, with each width specified
107
- # after every column in the table.
108
- #
109
- # `JSON 's3://mybucket/jsonpaths.txt'` - data is in JSON format, and
110
- # the path specified is the format of the data.
111
- #
112
- # For more examples, see [Amazon Redshift COPY command examples][2].
113
- #
114
- #
115
- #
116
- # [1]: http://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html
117
- # [2]: http://docs.aws.amazon.com/redshift/latest/dg/r_COPY_command_examples.html
118
- # @return [String]
119
- class CopyCommand < Struct.new(
120
- :data_table_name,
121
- :data_table_columns,
122
- :copy_options)
123
- include Aws::Structure
124
- end
134
+ # @note When making an API call, you may pass CreateDeliveryStreamInput
135
+ # data as a hash:
136
+ #
137
+ # {
138
+ # delivery_stream_name: "DeliveryStreamName", # required
139
+ # s3_destination_configuration: {
140
+ # role_arn: "RoleARN", # required
141
+ # bucket_arn: "BucketARN", # required
142
+ # prefix: "Prefix",
143
+ # buffering_hints: {
144
+ # size_in_m_bs: 1,
145
+ # interval_in_seconds: 1,
146
+ # },
147
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
148
+ # encryption_configuration: {
149
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
150
+ # kms_encryption_config: {
151
+ # awskms_key_arn: "AWSKMSKeyARN", # required
152
+ # },
153
+ # },
154
+ # cloud_watch_logging_options: {
155
+ # enabled: false,
156
+ # log_group_name: "LogGroupName",
157
+ # log_stream_name: "LogStreamName",
158
+ # },
159
+ # },
160
+ # extended_s3_destination_configuration: {
161
+ # role_arn: "RoleARN", # required
162
+ # bucket_arn: "BucketARN", # required
163
+ # prefix: "Prefix",
164
+ # buffering_hints: {
165
+ # size_in_m_bs: 1,
166
+ # interval_in_seconds: 1,
167
+ # },
168
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
169
+ # encryption_configuration: {
170
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
171
+ # kms_encryption_config: {
172
+ # awskms_key_arn: "AWSKMSKeyARN", # required
173
+ # },
174
+ # },
175
+ # cloud_watch_logging_options: {
176
+ # enabled: false,
177
+ # log_group_name: "LogGroupName",
178
+ # log_stream_name: "LogStreamName",
179
+ # },
180
+ # processing_configuration: {
181
+ # enabled: false,
182
+ # processors: [
183
+ # {
184
+ # type: "Lambda", # required, accepts Lambda
185
+ # parameters: [
186
+ # {
187
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
188
+ # parameter_value: "ProcessorParameterValue", # required
189
+ # },
190
+ # ],
191
+ # },
192
+ # ],
193
+ # },
194
+ # s3_backup_mode: "Disabled", # accepts Disabled, Enabled
195
+ # s3_backup_configuration: {
196
+ # role_arn: "RoleARN", # required
197
+ # bucket_arn: "BucketARN", # required
198
+ # prefix: "Prefix",
199
+ # buffering_hints: {
200
+ # size_in_m_bs: 1,
201
+ # interval_in_seconds: 1,
202
+ # },
203
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
204
+ # encryption_configuration: {
205
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
206
+ # kms_encryption_config: {
207
+ # awskms_key_arn: "AWSKMSKeyARN", # required
208
+ # },
209
+ # },
210
+ # cloud_watch_logging_options: {
211
+ # enabled: false,
212
+ # log_group_name: "LogGroupName",
213
+ # log_stream_name: "LogStreamName",
214
+ # },
215
+ # },
216
+ # },
217
+ # redshift_destination_configuration: {
218
+ # role_arn: "RoleARN", # required
219
+ # cluster_jdbcurl: "ClusterJDBCURL", # required
220
+ # copy_command: { # required
221
+ # data_table_name: "DataTableName", # required
222
+ # data_table_columns: "DataTableColumns",
223
+ # copy_options: "CopyOptions",
224
+ # },
225
+ # username: "Username", # required
226
+ # password: "Password", # required
227
+ # retry_options: {
228
+ # duration_in_seconds: 1,
229
+ # },
230
+ # s3_configuration: { # required
231
+ # role_arn: "RoleARN", # required
232
+ # bucket_arn: "BucketARN", # required
233
+ # prefix: "Prefix",
234
+ # buffering_hints: {
235
+ # size_in_m_bs: 1,
236
+ # interval_in_seconds: 1,
237
+ # },
238
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
239
+ # encryption_configuration: {
240
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
241
+ # kms_encryption_config: {
242
+ # awskms_key_arn: "AWSKMSKeyARN", # required
243
+ # },
244
+ # },
245
+ # cloud_watch_logging_options: {
246
+ # enabled: false,
247
+ # log_group_name: "LogGroupName",
248
+ # log_stream_name: "LogStreamName",
249
+ # },
250
+ # },
251
+ # processing_configuration: {
252
+ # enabled: false,
253
+ # processors: [
254
+ # {
255
+ # type: "Lambda", # required, accepts Lambda
256
+ # parameters: [
257
+ # {
258
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
259
+ # parameter_value: "ProcessorParameterValue", # required
260
+ # },
261
+ # ],
262
+ # },
263
+ # ],
264
+ # },
265
+ # s3_backup_mode: "Disabled", # accepts Disabled, Enabled
266
+ # s3_backup_configuration: {
267
+ # role_arn: "RoleARN", # required
268
+ # bucket_arn: "BucketARN", # required
269
+ # prefix: "Prefix",
270
+ # buffering_hints: {
271
+ # size_in_m_bs: 1,
272
+ # interval_in_seconds: 1,
273
+ # },
274
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
275
+ # encryption_configuration: {
276
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
277
+ # kms_encryption_config: {
278
+ # awskms_key_arn: "AWSKMSKeyARN", # required
279
+ # },
280
+ # },
281
+ # cloud_watch_logging_options: {
282
+ # enabled: false,
283
+ # log_group_name: "LogGroupName",
284
+ # log_stream_name: "LogStreamName",
285
+ # },
286
+ # },
287
+ # cloud_watch_logging_options: {
288
+ # enabled: false,
289
+ # log_group_name: "LogGroupName",
290
+ # log_stream_name: "LogStreamName",
291
+ # },
292
+ # },
293
+ # elasticsearch_destination_configuration: {
294
+ # role_arn: "RoleARN", # required
295
+ # domain_arn: "ElasticsearchDomainARN", # required
296
+ # index_name: "ElasticsearchIndexName", # required
297
+ # type_name: "ElasticsearchTypeName", # required
298
+ # index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
299
+ # buffering_hints: {
300
+ # interval_in_seconds: 1,
301
+ # size_in_m_bs: 1,
302
+ # },
303
+ # retry_options: {
304
+ # duration_in_seconds: 1,
305
+ # },
306
+ # s3_backup_mode: "FailedDocumentsOnly", # accepts FailedDocumentsOnly, AllDocuments
307
+ # s3_configuration: { # required
308
+ # role_arn: "RoleARN", # required
309
+ # bucket_arn: "BucketARN", # required
310
+ # prefix: "Prefix",
311
+ # buffering_hints: {
312
+ # size_in_m_bs: 1,
313
+ # interval_in_seconds: 1,
314
+ # },
315
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
316
+ # encryption_configuration: {
317
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
318
+ # kms_encryption_config: {
319
+ # awskms_key_arn: "AWSKMSKeyARN", # required
320
+ # },
321
+ # },
322
+ # cloud_watch_logging_options: {
323
+ # enabled: false,
324
+ # log_group_name: "LogGroupName",
325
+ # log_stream_name: "LogStreamName",
326
+ # },
327
+ # },
328
+ # processing_configuration: {
329
+ # enabled: false,
330
+ # processors: [
331
+ # {
332
+ # type: "Lambda", # required, accepts Lambda
333
+ # parameters: [
334
+ # {
335
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
336
+ # parameter_value: "ProcessorParameterValue", # required
337
+ # },
338
+ # ],
339
+ # },
340
+ # ],
341
+ # },
342
+ # cloud_watch_logging_options: {
343
+ # enabled: false,
344
+ # log_group_name: "LogGroupName",
345
+ # log_stream_name: "LogStreamName",
346
+ # },
347
+ # },
348
+ # }
349
+ #
350
+ # @!attribute [rw] delivery_stream_name
351
+ # The name of the delivery stream. This name must be unique per AWS
352
+ # account in the same region. You can have multiple delivery streams
353
+ # with the same name if they are in different accounts or different
354
+ # regions.
355
+ # @return [String]
356
+ #
357
+ # @!attribute [rw] s3_destination_configuration
358
+ # \[Deprecated\] The destination in Amazon S3. You can specify only
359
+ # one destination.
360
+ # @return [Types::S3DestinationConfiguration]
361
+ #
362
+ # @!attribute [rw] extended_s3_destination_configuration
363
+ # The destination in Amazon S3. You can specify only one destination.
364
+ # @return [Types::ExtendedS3DestinationConfiguration]
365
+ #
366
+ # @!attribute [rw] redshift_destination_configuration
367
+ # The destination in Amazon Redshift. You can specify only one
368
+ # destination.
369
+ # @return [Types::RedshiftDestinationConfiguration]
370
+ #
371
+ # @!attribute [rw] elasticsearch_destination_configuration
372
+ # The destination in Amazon ES. You can specify only one destination.
373
+ # @return [Types::ElasticsearchDestinationConfiguration]
374
+ #
375
+ class CreateDeliveryStreamInput < Struct.new(
376
+ :delivery_stream_name,
377
+ :s3_destination_configuration,
378
+ :extended_s3_destination_configuration,
379
+ :redshift_destination_configuration,
380
+ :elasticsearch_destination_configuration)
381
+ include Aws::Structure
382
+ end
125
383
 
126
- # Contains the parameters for CreateDeliveryStream.
127
- # @note When making an API call, pass CreateDeliveryStreamInput
128
- # data as a hash:
129
- #
130
- # {
131
- # delivery_stream_name: "DeliveryStreamName", # required
132
- # s3_destination_configuration: {
133
- # role_arn: "RoleARN", # required
134
- # bucket_arn: "BucketARN", # required
135
- # prefix: "Prefix",
136
- # buffering_hints: {
137
- # size_in_m_bs: 1,
138
- # interval_in_seconds: 1,
139
- # },
140
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
141
- # encryption_configuration: {
142
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
143
- # kms_encryption_config: {
144
- # awskms_key_arn: "AWSKMSKeyARN", # required
145
- # },
146
- # },
147
- # cloud_watch_logging_options: {
148
- # enabled: false,
149
- # log_group_name: "LogGroupName",
150
- # log_stream_name: "LogStreamName",
151
- # },
152
- # },
153
- # redshift_destination_configuration: {
154
- # role_arn: "RoleARN", # required
155
- # cluster_jdbcurl: "ClusterJDBCURL", # required
156
- # copy_command: { # required
157
- # data_table_name: "DataTableName", # required
158
- # data_table_columns: "DataTableColumns",
159
- # copy_options: "CopyOptions",
160
- # },
161
- # username: "Username", # required
162
- # password: "Password", # required
163
- # retry_options: {
164
- # duration_in_seconds: 1,
165
- # },
166
- # s3_configuration: { # required
167
- # role_arn: "RoleARN", # required
168
- # bucket_arn: "BucketARN", # required
169
- # prefix: "Prefix",
170
- # buffering_hints: {
171
- # size_in_m_bs: 1,
172
- # interval_in_seconds: 1,
173
- # },
174
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
175
- # encryption_configuration: {
176
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
177
- # kms_encryption_config: {
178
- # awskms_key_arn: "AWSKMSKeyARN", # required
179
- # },
180
- # },
181
- # cloud_watch_logging_options: {
182
- # enabled: false,
183
- # log_group_name: "LogGroupName",
184
- # log_stream_name: "LogStreamName",
185
- # },
186
- # },
187
- # cloud_watch_logging_options: {
188
- # enabled: false,
189
- # log_group_name: "LogGroupName",
190
- # log_stream_name: "LogStreamName",
191
- # },
192
- # },
193
- # elasticsearch_destination_configuration: {
194
- # role_arn: "RoleARN", # required
195
- # domain_arn: "ElasticsearchDomainARN", # required
196
- # index_name: "ElasticsearchIndexName", # required
197
- # type_name: "ElasticsearchTypeName", # required
198
- # index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
199
- # buffering_hints: {
200
- # interval_in_seconds: 1,
201
- # size_in_m_bs: 1,
202
- # },
203
- # retry_options: {
204
- # duration_in_seconds: 1,
205
- # },
206
- # s3_backup_mode: "FailedDocumentsOnly", # accepts FailedDocumentsOnly, AllDocuments
207
- # s3_configuration: { # required
208
- # role_arn: "RoleARN", # required
209
- # bucket_arn: "BucketARN", # required
210
- # prefix: "Prefix",
211
- # buffering_hints: {
212
- # size_in_m_bs: 1,
213
- # interval_in_seconds: 1,
214
- # },
215
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
216
- # encryption_configuration: {
217
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
218
- # kms_encryption_config: {
219
- # awskms_key_arn: "AWSKMSKeyARN", # required
220
- # },
221
- # },
222
- # cloud_watch_logging_options: {
223
- # enabled: false,
224
- # log_group_name: "LogGroupName",
225
- # log_stream_name: "LogStreamName",
226
- # },
227
- # },
228
- # cloud_watch_logging_options: {
229
- # enabled: false,
230
- # log_group_name: "LogGroupName",
231
- # log_stream_name: "LogStreamName",
232
- # },
233
- # },
234
- # }
235
- # @!attribute [rw] delivery_stream_name
236
- # The name of the delivery stream.
237
- # @return [String]
238
- #
239
- # @!attribute [rw] s3_destination_configuration
240
- # The destination in Amazon S3. This value must be specified if
241
- # **ElasticsearchDestinationConfiguration** or
242
- # **RedshiftDestinationConfiguration** is specified (see restrictions
243
- # listed above).
244
- # @return [Types::S3DestinationConfiguration]
245
- #
246
- # @!attribute [rw] redshift_destination_configuration
247
- # The destination in Amazon Redshift. This value cannot be specified
248
- # if Amazon S3 or Amazon Elasticsearch is the desired destination (see
249
- # restrictions listed above).
250
- # @return [Types::RedshiftDestinationConfiguration]
251
- #
252
- # @!attribute [rw] elasticsearch_destination_configuration
253
- # The destination in Amazon ES. This value cannot be specified if
254
- # Amazon S3 or Amazon Redshift is the desired destination (see
255
- # restrictions listed above).
256
- # @return [Types::ElasticsearchDestinationConfiguration]
257
- class CreateDeliveryStreamInput < Struct.new(
258
- :delivery_stream_name,
259
- :s3_destination_configuration,
260
- :redshift_destination_configuration,
261
- :elasticsearch_destination_configuration)
262
- include Aws::Structure
263
- end
384
+ # @!attribute [rw] delivery_stream_arn
385
+ # The ARN of the delivery stream.
386
+ # @return [String]
387
+ #
388
+ class CreateDeliveryStreamOutput < Struct.new(
389
+ :delivery_stream_arn)
390
+ include Aws::Structure
391
+ end
392
+
393
+ # @note When making an API call, you may pass DeleteDeliveryStreamInput
394
+ # data as a hash:
395
+ #
396
+ # {
397
+ # delivery_stream_name: "DeliveryStreamName", # required
398
+ # }
399
+ #
400
+ # @!attribute [rw] delivery_stream_name
401
+ # The name of the delivery stream.
402
+ # @return [String]
403
+ #
404
+ class DeleteDeliveryStreamInput < Struct.new(
405
+ :delivery_stream_name)
406
+ include Aws::Structure
407
+ end
408
+
409
+ class DeleteDeliveryStreamOutput < Aws::EmptyStructure; end
410
+
411
+ # Contains information about a delivery stream.
412
+ #
413
+ # @!attribute [rw] delivery_stream_name
414
+ # The name of the delivery stream.
415
+ # @return [String]
416
+ #
417
+ # @!attribute [rw] delivery_stream_arn
418
+ # The Amazon Resource Name (ARN) of the delivery stream.
419
+ # @return [String]
420
+ #
421
+ # @!attribute [rw] delivery_stream_status
422
+ # The status of the delivery stream.
423
+ # @return [String]
424
+ #
425
+ # @!attribute [rw] version_id
426
+ # Each time the destination is updated for a delivery stream, the
427
+ # version ID is changed, and the current version ID is required when
428
+ # updating the destination. This is so that the service knows it is
429
+ # applying the changes to the correct version of the delivery stream.
430
+ # @return [String]
431
+ #
432
+ # @!attribute [rw] create_timestamp
433
+ # The date and time that the delivery stream was created.
434
+ # @return [Time]
435
+ #
436
+ # @!attribute [rw] last_update_timestamp
437
+ # The date and time that the delivery stream was last updated.
438
+ # @return [Time]
439
+ #
440
+ # @!attribute [rw] destinations
441
+ # The destinations.
442
+ # @return [Array<Types::DestinationDescription>]
443
+ #
444
+ # @!attribute [rw] has_more_destinations
445
+ # Indicates whether there are more destinations available to list.
446
+ # @return [Boolean]
447
+ #
448
+ class DeliveryStreamDescription < Struct.new(
449
+ :delivery_stream_name,
450
+ :delivery_stream_arn,
451
+ :delivery_stream_status,
452
+ :version_id,
453
+ :create_timestamp,
454
+ :last_update_timestamp,
455
+ :destinations,
456
+ :has_more_destinations)
457
+ include Aws::Structure
458
+ end
264
459
 
265
- # Contains the output of CreateDeliveryStream.
266
- # @!attribute [rw] delivery_stream_arn
267
- # The ARN of the delivery stream.
268
- # @return [String]
269
- class CreateDeliveryStreamOutput < Struct.new(
270
- :delivery_stream_arn)
271
- include Aws::Structure
272
- end
460
+ # @note When making an API call, you may pass DescribeDeliveryStreamInput
461
+ # data as a hash:
462
+ #
463
+ # {
464
+ # delivery_stream_name: "DeliveryStreamName", # required
465
+ # limit: 1,
466
+ # exclusive_start_destination_id: "DestinationId",
467
+ # }
468
+ #
469
+ # @!attribute [rw] delivery_stream_name
470
+ # The name of the delivery stream.
471
+ # @return [String]
472
+ #
473
+ # @!attribute [rw] limit
474
+ # The limit on the number of destinations to return. Currently, you
475
+ # can have one destination per delivery stream.
476
+ # @return [Integer]
477
+ #
478
+ # @!attribute [rw] exclusive_start_destination_id
479
+ # The ID of the destination to start returning the destination
480
+ # information. Currently Firehose supports one destination per
481
+ # delivery stream.
482
+ # @return [String]
483
+ #
484
+ class DescribeDeliveryStreamInput < Struct.new(
485
+ :delivery_stream_name,
486
+ :limit,
487
+ :exclusive_start_destination_id)
488
+ include Aws::Structure
489
+ end
273
490
 
274
- # Contains the parameters for DeleteDeliveryStream.
275
- # @note When making an API call, pass DeleteDeliveryStreamInput
276
- # data as a hash:
277
- #
278
- # {
279
- # delivery_stream_name: "DeliveryStreamName", # required
280
- # }
281
- # @!attribute [rw] delivery_stream_name
282
- # The name of the delivery stream.
283
- # @return [String]
284
- class DeleteDeliveryStreamInput < Struct.new(
285
- :delivery_stream_name)
286
- include Aws::Structure
287
- end
491
+ # @!attribute [rw] delivery_stream_description
492
+ # Information about the delivery stream.
493
+ # @return [Types::DeliveryStreamDescription]
494
+ #
495
+ class DescribeDeliveryStreamOutput < Struct.new(
496
+ :delivery_stream_description)
497
+ include Aws::Structure
498
+ end
288
499
 
289
- # Contains the output of DeleteDeliveryStream.
290
- class DeleteDeliveryStreamOutput < Aws::EmptyStructure; end
500
+ # Describes the destination for a delivery stream.
501
+ #
502
+ # @!attribute [rw] destination_id
503
+ # The ID of the destination.
504
+ # @return [String]
505
+ #
506
+ # @!attribute [rw] s3_destination_description
507
+ # \[Deprecated\] The destination in Amazon S3.
508
+ # @return [Types::S3DestinationDescription]
509
+ #
510
+ # @!attribute [rw] extended_s3_destination_description
511
+ # The destination in Amazon S3.
512
+ # @return [Types::ExtendedS3DestinationDescription]
513
+ #
514
+ # @!attribute [rw] redshift_destination_description
515
+ # The destination in Amazon Redshift.
516
+ # @return [Types::RedshiftDestinationDescription]
517
+ #
518
+ # @!attribute [rw] elasticsearch_destination_description
519
+ # The destination in Amazon ES.
520
+ # @return [Types::ElasticsearchDestinationDescription]
521
+ #
522
+ class DestinationDescription < Struct.new(
523
+ :destination_id,
524
+ :s3_destination_description,
525
+ :extended_s3_destination_description,
526
+ :redshift_destination_description,
527
+ :elasticsearch_destination_description)
528
+ include Aws::Structure
529
+ end
291
530
 
292
- # Contains information about a delivery stream.
293
- # @!attribute [rw] delivery_stream_name
294
- # The name of the delivery stream.
295
- # @return [String]
296
- #
297
- # @!attribute [rw] delivery_stream_arn
298
- # The Amazon Resource Name (ARN) of the delivery stream.
299
- # @return [String]
300
- #
301
- # @!attribute [rw] delivery_stream_status
302
- # The status of the delivery stream.
303
- # @return [String]
304
- #
305
- # @!attribute [rw] version_id
306
- # Used when calling the UpdateDestination operation. Each time the
307
- # destination is updated for the delivery stream, the VersionId is
308
- # changed, and the current VersionId is required when updating the
309
- # destination. This is so that the service knows it is applying the
310
- # changes to the correct version of the delivery stream.
311
- # @return [String]
312
- #
313
- # @!attribute [rw] create_timestamp
314
- # The date and time that the delivery stream was created.
315
- # @return [Time]
316
- #
317
- # @!attribute [rw] last_update_timestamp
318
- # The date and time that the delivery stream was last updated.
319
- # @return [Time]
320
- #
321
- # @!attribute [rw] destinations
322
- # The destinations.
323
- # @return [Array<Types::DestinationDescription>]
324
- #
325
- # @!attribute [rw] has_more_destinations
326
- # Indicates whether there are more destinations available to list.
327
- # @return [Boolean]
328
- class DeliveryStreamDescription < Struct.new(
329
- :delivery_stream_name,
330
- :delivery_stream_arn,
331
- :delivery_stream_status,
332
- :version_id,
333
- :create_timestamp,
334
- :last_update_timestamp,
335
- :destinations,
336
- :has_more_destinations)
337
- include Aws::Structure
338
- end
531
+ # Describes the buffering to perform before delivering data to the
532
+ # Amazon ES destination.
533
+ #
534
+ # @note When making an API call, you may pass ElasticsearchBufferingHints
535
+ # data as a hash:
536
+ #
537
+ # {
538
+ # interval_in_seconds: 1,
539
+ # size_in_m_bs: 1,
540
+ # }
541
+ #
542
+ # @!attribute [rw] interval_in_seconds
543
+ # Buffer incoming data for the specified period of time, in seconds,
544
+ # before delivering it to the destination. The default value is 300 (5
545
+ # minutes).
546
+ # @return [Integer]
547
+ #
548
+ # @!attribute [rw] size_in_m_bs
549
+ # Buffer incoming data to the specified size, in MBs, before
550
+ # delivering it to the destination. The default value is 5.
551
+ #
552
+ # We recommend setting this parameter to a value greater than the
553
+ # amount of data you typically ingest into the delivery stream in 10
554
+ # seconds. For example, if you typically ingest data at 1 MB/sec, the
555
+ # value should be 10 MB or higher.
556
+ # @return [Integer]
557
+ #
558
+ class ElasticsearchBufferingHints < Struct.new(
559
+ :interval_in_seconds,
560
+ :size_in_m_bs)
561
+ include Aws::Structure
562
+ end
339
563
 
340
- # Contains the parameters for DescribeDeliveryStream.
341
- # @note When making an API call, pass DescribeDeliveryStreamInput
342
- # data as a hash:
343
- #
344
- # {
345
- # delivery_stream_name: "DeliveryStreamName", # required
346
- # limit: 1,
347
- # exclusive_start_destination_id: "DestinationId",
348
- # }
349
- # @!attribute [rw] delivery_stream_name
350
- # The name of the delivery stream.
351
- # @return [String]
352
- #
353
- # @!attribute [rw] limit
354
- # The limit on the number of destinations to return. Currently, you
355
- # can have one destination per delivery stream.
356
- # @return [Integer]
357
- #
358
- # @!attribute [rw] exclusive_start_destination_id
359
- # Specifies the destination ID to start returning the destination
360
- # information. Currently Firehose supports one destination per
361
- # delivery stream.
362
- # @return [String]
363
- class DescribeDeliveryStreamInput < Struct.new(
364
- :delivery_stream_name,
365
- :limit,
366
- :exclusive_start_destination_id)
367
- include Aws::Structure
368
- end
564
+ # Describes the configuration of a destination in Amazon ES.
565
+ #
566
+ # @note When making an API call, you may pass ElasticsearchDestinationConfiguration
567
+ # data as a hash:
568
+ #
569
+ # {
570
+ # role_arn: "RoleARN", # required
571
+ # domain_arn: "ElasticsearchDomainARN", # required
572
+ # index_name: "ElasticsearchIndexName", # required
573
+ # type_name: "ElasticsearchTypeName", # required
574
+ # index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
575
+ # buffering_hints: {
576
+ # interval_in_seconds: 1,
577
+ # size_in_m_bs: 1,
578
+ # },
579
+ # retry_options: {
580
+ # duration_in_seconds: 1,
581
+ # },
582
+ # s3_backup_mode: "FailedDocumentsOnly", # accepts FailedDocumentsOnly, AllDocuments
583
+ # s3_configuration: { # required
584
+ # role_arn: "RoleARN", # required
585
+ # bucket_arn: "BucketARN", # required
586
+ # prefix: "Prefix",
587
+ # buffering_hints: {
588
+ # size_in_m_bs: 1,
589
+ # interval_in_seconds: 1,
590
+ # },
591
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
592
+ # encryption_configuration: {
593
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
594
+ # kms_encryption_config: {
595
+ # awskms_key_arn: "AWSKMSKeyARN", # required
596
+ # },
597
+ # },
598
+ # cloud_watch_logging_options: {
599
+ # enabled: false,
600
+ # log_group_name: "LogGroupName",
601
+ # log_stream_name: "LogStreamName",
602
+ # },
603
+ # },
604
+ # processing_configuration: {
605
+ # enabled: false,
606
+ # processors: [
607
+ # {
608
+ # type: "Lambda", # required, accepts Lambda
609
+ # parameters: [
610
+ # {
611
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
612
+ # parameter_value: "ProcessorParameterValue", # required
613
+ # },
614
+ # ],
615
+ # },
616
+ # ],
617
+ # },
618
+ # cloud_watch_logging_options: {
619
+ # enabled: false,
620
+ # log_group_name: "LogGroupName",
621
+ # log_stream_name: "LogStreamName",
622
+ # },
623
+ # }
624
+ #
625
+ # @!attribute [rw] role_arn
626
+ # The ARN of the IAM role to be assumed by Firehose for calling the
627
+ # Amazon ES Configuration API and for indexing documents. For more
628
+ # information, see [Amazon S3 Bucket Access][1].
629
+ #
630
+ #
631
+ #
632
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3
633
+ # @return [String]
634
+ #
635
+ # @!attribute [rw] domain_arn
636
+ # The ARN of the Amazon ES domain. The IAM role must have permissions
637
+ # for `DescribeElasticsearchDomain`, `DescribeElasticsearchDomains`,
638
+ # and `DescribeElasticsearchDomainConfig` after assuming the role
639
+ # specified in **RoleARN**.
640
+ # @return [String]
641
+ #
642
+ # @!attribute [rw] index_name
643
+ # The Elasticsearch index name.
644
+ # @return [String]
645
+ #
646
+ # @!attribute [rw] type_name
647
+ # The Elasticsearch type name.
648
+ # @return [String]
649
+ #
650
+ # @!attribute [rw] index_rotation_period
651
+ # The Elasticsearch index rotation period. Index rotation appends a
652
+ # timestamp to the IndexName to facilitate expiration of old data. For
653
+ # more information, see [Index Rotation for Amazon Elasticsearch
654
+ # Service Destination][1]. The default value is `OneDay`.
655
+ #
656
+ #
657
+ #
658
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation
659
+ # @return [String]
660
+ #
661
+ # @!attribute [rw] buffering_hints
662
+ # The buffering options. If no value is specified, the default values
663
+ # for **ElasticsearchBufferingHints** are used.
664
+ # @return [Types::ElasticsearchBufferingHints]
665
+ #
666
+ # @!attribute [rw] retry_options
667
+ # The retry behavior in the event that Firehose is unable to deliver
668
+ # documents to Amazon ES. The default value is 300 (5 minutes).
669
+ # @return [Types::ElasticsearchRetryOptions]
670
+ #
671
+ # @!attribute [rw] s3_backup_mode
672
+ # Defines how documents should be delivered to Amazon S3. When set to
673
+ # FailedDocumentsOnly, Firehose writes any documents that could not be
674
+ # indexed to the configured Amazon S3 destination, with
675
+ # elasticsearch-failed/ appended to the key prefix. When set to
676
+ # AllDocuments, Firehose delivers all incoming records to Amazon S3,
677
+ # and also writes failed documents with elasticsearch-failed/ appended
678
+ # to the prefix. For more information, see [Amazon S3 Backup for
679
+ # Amazon Elasticsearch Service Destination][1]. Default value is
680
+ # FailedDocumentsOnly.
681
+ #
682
+ #
683
+ #
684
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-s3-backup
685
+ # @return [String]
686
+ #
687
+ # @!attribute [rw] s3_configuration
688
+ # The configuration for the intermediate Amazon S3 location from which
689
+ # Amazon ES obtains data.
690
+ # @return [Types::S3DestinationConfiguration]
691
+ #
692
+ # @!attribute [rw] processing_configuration
693
+ # The data processing configuration.
694
+ # @return [Types::ProcessingConfiguration]
695
+ #
696
+ # @!attribute [rw] cloud_watch_logging_options
697
+ # The CloudWatch logging options for your delivery stream.
698
+ # @return [Types::CloudWatchLoggingOptions]
699
+ #
700
+ class ElasticsearchDestinationConfiguration < Struct.new(
701
+ :role_arn,
702
+ :domain_arn,
703
+ :index_name,
704
+ :type_name,
705
+ :index_rotation_period,
706
+ :buffering_hints,
707
+ :retry_options,
708
+ :s3_backup_mode,
709
+ :s3_configuration,
710
+ :processing_configuration,
711
+ :cloud_watch_logging_options)
712
+ include Aws::Structure
713
+ end
369
714
 
370
- # Contains the output of DescribeDeliveryStream.
371
- # @!attribute [rw] delivery_stream_description
372
- # Information about the delivery stream.
373
- # @return [Types::DeliveryStreamDescription]
374
- class DescribeDeliveryStreamOutput < Struct.new(
375
- :delivery_stream_description)
376
- include Aws::Structure
377
- end
715
+ # The destination description in Amazon ES.
716
+ #
717
+ # @!attribute [rw] role_arn
718
+ # The ARN of the AWS credentials.
719
+ # @return [String]
720
+ #
721
+ # @!attribute [rw] domain_arn
722
+ # The ARN of the Amazon ES domain.
723
+ # @return [String]
724
+ #
725
+ # @!attribute [rw] index_name
726
+ # The Elasticsearch index name.
727
+ # @return [String]
728
+ #
729
+ # @!attribute [rw] type_name
730
+ # The Elasticsearch type name.
731
+ # @return [String]
732
+ #
733
+ # @!attribute [rw] index_rotation_period
734
+ # The Elasticsearch index rotation period
735
+ # @return [String]
736
+ #
737
+ # @!attribute [rw] buffering_hints
738
+ # The buffering options.
739
+ # @return [Types::ElasticsearchBufferingHints]
740
+ #
741
+ # @!attribute [rw] retry_options
742
+ # The Amazon ES retry options.
743
+ # @return [Types::ElasticsearchRetryOptions]
744
+ #
745
+ # @!attribute [rw] s3_backup_mode
746
+ # The Amazon S3 backup mode.
747
+ # @return [String]
748
+ #
749
+ # @!attribute [rw] s3_destination_description
750
+ # The Amazon S3 destination.
751
+ # @return [Types::S3DestinationDescription]
752
+ #
753
+ # @!attribute [rw] processing_configuration
754
+ # The data processing configuration.
755
+ # @return [Types::ProcessingConfiguration]
756
+ #
757
+ # @!attribute [rw] cloud_watch_logging_options
758
+ # The CloudWatch logging options.
759
+ # @return [Types::CloudWatchLoggingOptions]
760
+ #
761
+ class ElasticsearchDestinationDescription < Struct.new(
762
+ :role_arn,
763
+ :domain_arn,
764
+ :index_name,
765
+ :type_name,
766
+ :index_rotation_period,
767
+ :buffering_hints,
768
+ :retry_options,
769
+ :s3_backup_mode,
770
+ :s3_destination_description,
771
+ :processing_configuration,
772
+ :cloud_watch_logging_options)
773
+ include Aws::Structure
774
+ end
378
775
 
379
- # Describes the destination for a delivery stream.
380
- # @!attribute [rw] destination_id
381
- # The ID of the destination.
382
- # @return [String]
383
- #
384
- # @!attribute [rw] s3_destination_description
385
- # The Amazon S3 destination.
386
- # @return [Types::S3DestinationDescription]
387
- #
388
- # @!attribute [rw] redshift_destination_description
389
- # The destination in Amazon Redshift.
390
- # @return [Types::RedshiftDestinationDescription]
391
- #
392
- # @!attribute [rw] elasticsearch_destination_description
393
- # The destination in Amazon ES.
394
- # @return [Types::ElasticsearchDestinationDescription]
395
- class DestinationDescription < Struct.new(
396
- :destination_id,
397
- :s3_destination_description,
398
- :redshift_destination_description,
399
- :elasticsearch_destination_description)
400
- include Aws::Structure
401
- end
776
+ # Describes an update for a destination in Amazon ES.
777
+ #
778
+ # @note When making an API call, you may pass ElasticsearchDestinationUpdate
779
+ # data as a hash:
780
+ #
781
+ # {
782
+ # role_arn: "RoleARN",
783
+ # domain_arn: "ElasticsearchDomainARN",
784
+ # index_name: "ElasticsearchIndexName",
785
+ # type_name: "ElasticsearchTypeName",
786
+ # index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
787
+ # buffering_hints: {
788
+ # interval_in_seconds: 1,
789
+ # size_in_m_bs: 1,
790
+ # },
791
+ # retry_options: {
792
+ # duration_in_seconds: 1,
793
+ # },
794
+ # s3_update: {
795
+ # role_arn: "RoleARN",
796
+ # bucket_arn: "BucketARN",
797
+ # prefix: "Prefix",
798
+ # buffering_hints: {
799
+ # size_in_m_bs: 1,
800
+ # interval_in_seconds: 1,
801
+ # },
802
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
803
+ # encryption_configuration: {
804
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
805
+ # kms_encryption_config: {
806
+ # awskms_key_arn: "AWSKMSKeyARN", # required
807
+ # },
808
+ # },
809
+ # cloud_watch_logging_options: {
810
+ # enabled: false,
811
+ # log_group_name: "LogGroupName",
812
+ # log_stream_name: "LogStreamName",
813
+ # },
814
+ # },
815
+ # processing_configuration: {
816
+ # enabled: false,
817
+ # processors: [
818
+ # {
819
+ # type: "Lambda", # required, accepts Lambda
820
+ # parameters: [
821
+ # {
822
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
823
+ # parameter_value: "ProcessorParameterValue", # required
824
+ # },
825
+ # ],
826
+ # },
827
+ # ],
828
+ # },
829
+ # cloud_watch_logging_options: {
830
+ # enabled: false,
831
+ # log_group_name: "LogGroupName",
832
+ # log_stream_name: "LogStreamName",
833
+ # },
834
+ # }
835
+ #
836
+ # @!attribute [rw] role_arn
837
+ # The ARN of the IAM role to be assumed by Firehose for calling the
838
+ # Amazon ES Configuration API and for indexing documents. For more
839
+ # information, see [Amazon S3 Bucket Access][1].
840
+ #
841
+ #
842
+ #
843
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3
844
+ # @return [String]
845
+ #
846
+ # @!attribute [rw] domain_arn
847
+ # The ARN of the Amazon ES domain. The IAM role must have permissions
848
+ # for `DescribeElasticsearchDomain`, `DescribeElasticsearchDomains`,
849
+ # and `DescribeElasticsearchDomainConfig` after assuming the IAM role
850
+ # specified in **RoleARN**.
851
+ # @return [String]
852
+ #
853
+ # @!attribute [rw] index_name
854
+ # The Elasticsearch index name.
855
+ # @return [String]
856
+ #
857
+ # @!attribute [rw] type_name
858
+ # The Elasticsearch type name.
859
+ # @return [String]
860
+ #
861
+ # @!attribute [rw] index_rotation_period
862
+ # The Elasticsearch index rotation period. Index rotation appends a
863
+ # timestamp to IndexName to facilitate the expiration of old data. For
864
+ # more information, see [Index Rotation for Amazon Elasticsearch
865
+ # Service Destination][1]. Default value is `OneDay`.
866
+ #
867
+ #
868
+ #
869
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation
870
+ # @return [String]
871
+ #
872
+ # @!attribute [rw] buffering_hints
873
+ # The buffering options. If no value is specified,
874
+ # **ElasticsearchBufferingHints** object default values are used.
875
+ # @return [Types::ElasticsearchBufferingHints]
876
+ #
877
+ # @!attribute [rw] retry_options
878
+ # The retry behavior in the event that Firehose is unable to deliver
879
+ # documents to Amazon ES. Default value is 300 (5 minutes).
880
+ # @return [Types::ElasticsearchRetryOptions]
881
+ #
882
+ # @!attribute [rw] s3_update
883
+ # The Amazon S3 destination.
884
+ # @return [Types::S3DestinationUpdate]
885
+ #
886
+ # @!attribute [rw] processing_configuration
887
+ # The data processing configuration.
888
+ # @return [Types::ProcessingConfiguration]
889
+ #
890
+ # @!attribute [rw] cloud_watch_logging_options
891
+ # The CloudWatch logging options for your delivery stream.
892
+ # @return [Types::CloudWatchLoggingOptions]
893
+ #
894
+ class ElasticsearchDestinationUpdate < Struct.new(
895
+ :role_arn,
896
+ :domain_arn,
897
+ :index_name,
898
+ :type_name,
899
+ :index_rotation_period,
900
+ :buffering_hints,
901
+ :retry_options,
902
+ :s3_update,
903
+ :processing_configuration,
904
+ :cloud_watch_logging_options)
905
+ include Aws::Structure
906
+ end
402
907
 
403
- # Describes the buffering to perform before delivering data to the
404
- # Amazon ES destination.
405
- # @note When making an API call, pass ElasticsearchBufferingHints
406
- # data as a hash:
407
- #
408
- # {
409
- # interval_in_seconds: 1,
410
- # size_in_m_bs: 1,
411
- # }
412
- # @!attribute [rw] interval_in_seconds
413
- # Buffer incoming data for the specified period of time, in seconds,
414
- # before delivering it to the destination. The default value is 300 (5
415
- # minutes).
416
- # @return [Integer]
417
- #
418
- # @!attribute [rw] size_in_m_bs
419
- # Buffer incoming data to the specified size, in MBs, before
420
- # delivering it to the destination. The default value is 5.
421
- #
422
- # We recommend setting **SizeInMBs** to a value greater than the
423
- # amount of data you typically ingest into the delivery stream in 10
424
- # seconds. For example, if you typically ingest data at 1 MB/sec, set
425
- # **SizeInMBs** to be 10 MB or higher.
426
- # @return [Integer]
427
- class ElasticsearchBufferingHints < Struct.new(
428
- :interval_in_seconds,
429
- :size_in_m_bs)
430
- include Aws::Structure
431
- end
908
+ # Configures retry behavior in the event that Firehose is unable to
909
+ # deliver documents to Amazon ES.
910
+ #
911
+ # @note When making an API call, you may pass ElasticsearchRetryOptions
912
+ # data as a hash:
913
+ #
914
+ # {
915
+ # duration_in_seconds: 1,
916
+ # }
917
+ #
918
+ # @!attribute [rw] duration_in_seconds
919
+ # After an initial failure to deliver to Amazon ES, the total amount
920
+ # of time during which Firehose re-attempts delivery (including the
921
+ # first attempt). After this time has elapsed, the failed documents
922
+ # are written to Amazon S3. Default value is 300 seconds (5 minutes).
923
+ # A value of 0 (zero) results in no retries.
924
+ # @return [Integer]
925
+ #
926
+ class ElasticsearchRetryOptions < Struct.new(
927
+ :duration_in_seconds)
928
+ include Aws::Structure
929
+ end
432
930
 
433
- # Describes the configuration of a destination in Amazon ES.
434
- # @note When making an API call, pass ElasticsearchDestinationConfiguration
435
- # data as a hash:
436
- #
437
- # {
438
- # role_arn: "RoleARN", # required
439
- # domain_arn: "ElasticsearchDomainARN", # required
440
- # index_name: "ElasticsearchIndexName", # required
441
- # type_name: "ElasticsearchTypeName", # required
442
- # index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
443
- # buffering_hints: {
444
- # interval_in_seconds: 1,
445
- # size_in_m_bs: 1,
446
- # },
447
- # retry_options: {
448
- # duration_in_seconds: 1,
449
- # },
450
- # s3_backup_mode: "FailedDocumentsOnly", # accepts FailedDocumentsOnly, AllDocuments
451
- # s3_configuration: { # required
452
- # role_arn: "RoleARN", # required
453
- # bucket_arn: "BucketARN", # required
454
- # prefix: "Prefix",
455
- # buffering_hints: {
456
- # size_in_m_bs: 1,
457
- # interval_in_seconds: 1,
458
- # },
459
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
460
- # encryption_configuration: {
461
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
462
- # kms_encryption_config: {
463
- # awskms_key_arn: "AWSKMSKeyARN", # required
464
- # },
465
- # },
466
- # cloud_watch_logging_options: {
467
- # enabled: false,
468
- # log_group_name: "LogGroupName",
469
- # log_stream_name: "LogStreamName",
470
- # },
471
- # },
472
- # cloud_watch_logging_options: {
473
- # enabled: false,
474
- # log_group_name: "LogGroupName",
475
- # log_stream_name: "LogStreamName",
476
- # },
477
- # }
478
- # @!attribute [rw] role_arn
479
- # The ARN of the IAM role to be assumed by Firehose for calling the
480
- # Amazon ES Configuration API and for indexing documents. For more
481
- # information, see [Amazon S3 Bucket Access][1].
482
- #
483
- #
484
- #
485
- # [1]: http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3
486
- # @return [String]
487
- #
488
- # @!attribute [rw] domain_arn
489
- # The ARN of the Amazon ES domain. The IAM role must have permission
490
- # for `DescribeElasticsearchDomain`, `DescribeElasticsearchDomains` ,
491
- # and `DescribeElasticsearchDomainConfig` after assuming **RoleARN**.
492
- # @return [String]
493
- #
494
- # @!attribute [rw] index_name
495
- # The Elasticsearch index name.
496
- # @return [String]
497
- #
498
- # @!attribute [rw] type_name
499
- # The Elasticsearch type name.
500
- # @return [String]
501
- #
502
- # @!attribute [rw] index_rotation_period
503
- # The Elasticsearch index rotation period. Index rotation appends a
504
- # timestamp to the IndexName to facilitate expiration of old data. For
505
- # more information, see [Index Rotation for Amazon Elasticsearch
506
- # Service Destination][1]. Default value is `OneDay`.
507
- #
508
- #
509
- #
510
- # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation
511
- # @return [String]
512
- #
513
- # @!attribute [rw] buffering_hints
514
- # Buffering options. If no value is specified,
515
- # **ElasticsearchBufferingHints** object default values are used.
516
- # @return [Types::ElasticsearchBufferingHints]
517
- #
518
- # @!attribute [rw] retry_options
519
- # Configures retry behavior in the event that Firehose is unable to
520
- # deliver documents to Amazon ES. Default value is 300 (5 minutes).
521
- # @return [Types::ElasticsearchRetryOptions]
522
- #
523
- # @!attribute [rw] s3_backup_mode
524
- # Defines how documents should be delivered to Amazon S3. When set to
525
- # FailedDocumentsOnly, Firehose writes any documents that could not be
526
- # indexed to the configured Amazon S3 destination, with
527
- # elasticsearch-failed/ appended to the key prefix. When set to
528
- # AllDocuments, Firehose delivers all incoming records to Amazon S3,
529
- # and also writes failed documents with elasticsearch-failed/ appended
530
- # to the prefix. For more information, see [Amazon S3 Backup for
531
- # Amazon Elasticsearch Service Destination][1]. Default value is
532
- # FailedDocumentsOnly.
533
- #
534
- #
535
- #
536
- # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-s3-backup
537
- # @return [String]
538
- #
539
- # @!attribute [rw] s3_configuration
540
- # Describes the configuration of a destination in Amazon S3.
541
- # @return [Types::S3DestinationConfiguration]
542
- #
543
- # @!attribute [rw] cloud_watch_logging_options
544
- # Describes CloudWatch logging options for your delivery stream.
545
- # @return [Types::CloudWatchLoggingOptions]
546
- class ElasticsearchDestinationConfiguration < Struct.new(
547
- :role_arn,
548
- :domain_arn,
549
- :index_name,
550
- :type_name,
551
- :index_rotation_period,
552
- :buffering_hints,
553
- :retry_options,
554
- :s3_backup_mode,
555
- :s3_configuration,
556
- :cloud_watch_logging_options)
557
- include Aws::Structure
558
- end
931
+ # Describes the encryption for a destination in Amazon S3.
932
+ #
933
+ # @note When making an API call, you may pass EncryptionConfiguration
934
+ # data as a hash:
935
+ #
936
+ # {
937
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
938
+ # kms_encryption_config: {
939
+ # awskms_key_arn: "AWSKMSKeyARN", # required
940
+ # },
941
+ # }
942
+ #
943
+ # @!attribute [rw] no_encryption_config
944
+ # Specifically override existing encryption information to ensure no
945
+ # encryption is used.
946
+ # @return [String]
947
+ #
948
+ # @!attribute [rw] kms_encryption_config
949
+ # The encryption key.
950
+ # @return [Types::KMSEncryptionConfig]
951
+ #
952
+ class EncryptionConfiguration < Struct.new(
953
+ :no_encryption_config,
954
+ :kms_encryption_config)
955
+ include Aws::Structure
956
+ end
559
957
 
560
- # The destination description in Amazon ES.
561
- # @!attribute [rw] role_arn
562
- # The ARN of the AWS credentials.
563
- # @return [String]
564
- #
565
- # @!attribute [rw] domain_arn
566
- # The ARN of the Amazon ES domain.
567
- # @return [String]
568
- #
569
- # @!attribute [rw] index_name
570
- # The Elasticsearch index name.
571
- # @return [String]
572
- #
573
- # @!attribute [rw] type_name
574
- # The Elasticsearch type name.
575
- # @return [String]
576
- #
577
- # @!attribute [rw] index_rotation_period
578
- # The Elasticsearch index rotation period
579
- # @return [String]
580
- #
581
- # @!attribute [rw] buffering_hints
582
- # Buffering options.
583
- # @return [Types::ElasticsearchBufferingHints]
584
- #
585
- # @!attribute [rw] retry_options
586
- # Elasticsearch retry options.
587
- # @return [Types::ElasticsearchRetryOptions]
588
- #
589
- # @!attribute [rw] s3_backup_mode
590
- # Amazon S3 backup mode.
591
- # @return [String]
592
- #
593
- # @!attribute [rw] s3_destination_description
594
- # Describes a destination in Amazon S3.
595
- # @return [Types::S3DestinationDescription]
596
- #
597
- # @!attribute [rw] cloud_watch_logging_options
598
- # CloudWatch logging options.
599
- # @return [Types::CloudWatchLoggingOptions]
600
- class ElasticsearchDestinationDescription < Struct.new(
601
- :role_arn,
602
- :domain_arn,
603
- :index_name,
604
- :type_name,
605
- :index_rotation_period,
606
- :buffering_hints,
607
- :retry_options,
608
- :s3_backup_mode,
609
- :s3_destination_description,
610
- :cloud_watch_logging_options)
611
- include Aws::Structure
612
- end
958
+ # Describes the configuration of a destination in Amazon S3.
959
+ #
960
+ # @note When making an API call, you may pass ExtendedS3DestinationConfiguration
961
+ # data as a hash:
962
+ #
963
+ # {
964
+ # role_arn: "RoleARN", # required
965
+ # bucket_arn: "BucketARN", # required
966
+ # prefix: "Prefix",
967
+ # buffering_hints: {
968
+ # size_in_m_bs: 1,
969
+ # interval_in_seconds: 1,
970
+ # },
971
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
972
+ # encryption_configuration: {
973
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
974
+ # kms_encryption_config: {
975
+ # awskms_key_arn: "AWSKMSKeyARN", # required
976
+ # },
977
+ # },
978
+ # cloud_watch_logging_options: {
979
+ # enabled: false,
980
+ # log_group_name: "LogGroupName",
981
+ # log_stream_name: "LogStreamName",
982
+ # },
983
+ # processing_configuration: {
984
+ # enabled: false,
985
+ # processors: [
986
+ # {
987
+ # type: "Lambda", # required, accepts Lambda
988
+ # parameters: [
989
+ # {
990
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
991
+ # parameter_value: "ProcessorParameterValue", # required
992
+ # },
993
+ # ],
994
+ # },
995
+ # ],
996
+ # },
997
+ # s3_backup_mode: "Disabled", # accepts Disabled, Enabled
998
+ # s3_backup_configuration: {
999
+ # role_arn: "RoleARN", # required
1000
+ # bucket_arn: "BucketARN", # required
1001
+ # prefix: "Prefix",
1002
+ # buffering_hints: {
1003
+ # size_in_m_bs: 1,
1004
+ # interval_in_seconds: 1,
1005
+ # },
1006
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1007
+ # encryption_configuration: {
1008
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
1009
+ # kms_encryption_config: {
1010
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1011
+ # },
1012
+ # },
1013
+ # cloud_watch_logging_options: {
1014
+ # enabled: false,
1015
+ # log_group_name: "LogGroupName",
1016
+ # log_stream_name: "LogStreamName",
1017
+ # },
1018
+ # },
1019
+ # }
1020
+ #
1021
+ # @!attribute [rw] role_arn
1022
+ # The ARN of the AWS credentials.
1023
+ # @return [String]
1024
+ #
1025
+ # @!attribute [rw] bucket_arn
1026
+ # The ARN of the S3 bucket.
1027
+ # @return [String]
1028
+ #
1029
+ # @!attribute [rw] prefix
1030
+ # The "YYYY/MM/DD/HH" time format prefix is automatically used for
1031
+ # delivered S3 files. You can specify an extra prefix to be added in
1032
+ # front of the time format prefix. Note that if the prefix ends with a
1033
+ # slash, it appears as a folder in the S3 bucket. For more
1034
+ # information, see [Amazon S3 Object Name Format][1] in the *Amazon
1035
+ # Kinesis Firehose Developer Guide*.
1036
+ #
1037
+ #
1038
+ #
1039
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
1040
+ # @return [String]
1041
+ #
1042
+ # @!attribute [rw] buffering_hints
1043
+ # The buffering option.
1044
+ # @return [Types::BufferingHints]
1045
+ #
1046
+ # @!attribute [rw] compression_format
1047
+ # The compression format. If no value is specified, the default is
1048
+ # UNCOMPRESSED.
1049
+ # @return [String]
1050
+ #
1051
+ # @!attribute [rw] encryption_configuration
1052
+ # The encryption configuration. If no value is specified, the default
1053
+ # is no encryption.
1054
+ # @return [Types::EncryptionConfiguration]
1055
+ #
1056
+ # @!attribute [rw] cloud_watch_logging_options
1057
+ # The CloudWatch logging options for your delivery stream.
1058
+ # @return [Types::CloudWatchLoggingOptions]
1059
+ #
1060
+ # @!attribute [rw] processing_configuration
1061
+ # The data processing configuration.
1062
+ # @return [Types::ProcessingConfiguration]
1063
+ #
1064
+ # @!attribute [rw] s3_backup_mode
1065
+ # The Amazon S3 backup mode.
1066
+ # @return [String]
1067
+ #
1068
+ # @!attribute [rw] s3_backup_configuration
1069
+ # The configuration for backup in Amazon S3.
1070
+ # @return [Types::S3DestinationConfiguration]
1071
+ #
1072
+ class ExtendedS3DestinationConfiguration < Struct.new(
1073
+ :role_arn,
1074
+ :bucket_arn,
1075
+ :prefix,
1076
+ :buffering_hints,
1077
+ :compression_format,
1078
+ :encryption_configuration,
1079
+ :cloud_watch_logging_options,
1080
+ :processing_configuration,
1081
+ :s3_backup_mode,
1082
+ :s3_backup_configuration)
1083
+ include Aws::Structure
1084
+ end
613
1085
 
614
- # Describes an update for a destination in Amazon ES.
615
- # @note When making an API call, pass ElasticsearchDestinationUpdate
616
- # data as a hash:
617
- #
618
- # {
619
- # role_arn: "RoleARN",
620
- # domain_arn: "ElasticsearchDomainARN",
621
- # index_name: "ElasticsearchIndexName",
622
- # type_name: "ElasticsearchTypeName",
623
- # index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
624
- # buffering_hints: {
625
- # interval_in_seconds: 1,
626
- # size_in_m_bs: 1,
627
- # },
628
- # retry_options: {
629
- # duration_in_seconds: 1,
630
- # },
631
- # s3_update: {
632
- # role_arn: "RoleARN",
633
- # bucket_arn: "BucketARN",
634
- # prefix: "Prefix",
635
- # buffering_hints: {
636
- # size_in_m_bs: 1,
637
- # interval_in_seconds: 1,
638
- # },
639
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
640
- # encryption_configuration: {
641
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
642
- # kms_encryption_config: {
643
- # awskms_key_arn: "AWSKMSKeyARN", # required
644
- # },
645
- # },
646
- # cloud_watch_logging_options: {
647
- # enabled: false,
648
- # log_group_name: "LogGroupName",
649
- # log_stream_name: "LogStreamName",
650
- # },
651
- # },
652
- # cloud_watch_logging_options: {
653
- # enabled: false,
654
- # log_group_name: "LogGroupName",
655
- # log_stream_name: "LogStreamName",
656
- # },
657
- # }
658
- # @!attribute [rw] role_arn
659
- # The ARN of the IAM role to be assumed by Firehose for calling the
660
- # Amazon ES Configuration API and for indexing documents. For more
661
- # information, see [Amazon S3 Bucket Access][1].
662
- #
663
- #
664
- #
665
- # [1]: http://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-iam-s3
666
- # @return [String]
667
- #
668
- # @!attribute [rw] domain_arn
669
- # The ARN of the Amazon ES domain. The IAM role must have permission
670
- # for DescribeElasticsearchDomain, DescribeElasticsearchDomains , and
671
- # DescribeElasticsearchDomainConfig after assuming **RoleARN**.
672
- # @return [String]
673
- #
674
- # @!attribute [rw] index_name
675
- # The Elasticsearch index name.
676
- # @return [String]
677
- #
678
- # @!attribute [rw] type_name
679
- # The Elasticsearch type name.
680
- # @return [String]
681
- #
682
- # @!attribute [rw] index_rotation_period
683
- # The Elasticsearch index rotation period. Index rotation appends a
684
- # timestamp to the IndexName to facilitate the expiration of old data.
685
- # For more information, see [Index Rotation for Amazon Elasticsearch
686
- # Service Destination][1]. Default value is `OneDay`.
687
- #
688
- #
689
- #
690
- # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html#es-index-rotation
691
- # @return [String]
692
- #
693
- # @!attribute [rw] buffering_hints
694
- # Buffering options. If no value is specified,
695
- # **ElasticsearchBufferingHints** object default values are used.
696
- # @return [Types::ElasticsearchBufferingHints]
697
- #
698
- # @!attribute [rw] retry_options
699
- # Configures retry behavior in the event that Firehose is unable to
700
- # deliver documents to Amazon ES. Default value is 300 (5 minutes).
701
- # @return [Types::ElasticsearchRetryOptions]
702
- #
703
- # @!attribute [rw] s3_update
704
- # Describes an update for a destination in Amazon S3.
705
- # @return [Types::S3DestinationUpdate]
706
- #
707
- # @!attribute [rw] cloud_watch_logging_options
708
- # Describes CloudWatch logging options for your delivery stream.
709
- # @return [Types::CloudWatchLoggingOptions]
710
- class ElasticsearchDestinationUpdate < Struct.new(
711
- :role_arn,
712
- :domain_arn,
713
- :index_name,
714
- :type_name,
715
- :index_rotation_period,
716
- :buffering_hints,
717
- :retry_options,
718
- :s3_update,
719
- :cloud_watch_logging_options)
720
- include Aws::Structure
721
- end
1086
+ # Describes a destination in Amazon S3.
1087
+ #
1088
+ # @!attribute [rw] role_arn
1089
+ # The ARN of the AWS credentials.
1090
+ # @return [String]
1091
+ #
1092
+ # @!attribute [rw] bucket_arn
1093
+ # The ARN of the S3 bucket.
1094
+ # @return [String]
1095
+ #
1096
+ # @!attribute [rw] prefix
1097
+ # The "YYYY/MM/DD/HH" time format prefix is automatically used for
1098
+ # delivered S3 files. You can specify an extra prefix to be added in
1099
+ # front of the time format prefix. Note that if the prefix ends with a
1100
+ # slash, it appears as a folder in the S3 bucket. For more
1101
+ # information, see [Amazon S3 Object Name Format][1] in the *Amazon
1102
+ # Kinesis Firehose Developer Guide*.
1103
+ #
1104
+ #
1105
+ #
1106
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
1107
+ # @return [String]
1108
+ #
1109
+ # @!attribute [rw] buffering_hints
1110
+ # The buffering option.
1111
+ # @return [Types::BufferingHints]
1112
+ #
1113
+ # @!attribute [rw] compression_format
1114
+ # The compression format. If no value is specified, the default is
1115
+ # `UNCOMPRESSED`.
1116
+ # @return [String]
1117
+ #
1118
+ # @!attribute [rw] encryption_configuration
1119
+ # The encryption configuration. If no value is specified, the default
1120
+ # is no encryption.
1121
+ # @return [Types::EncryptionConfiguration]
1122
+ #
1123
+ # @!attribute [rw] cloud_watch_logging_options
1124
+ # The CloudWatch logging options for your delivery stream.
1125
+ # @return [Types::CloudWatchLoggingOptions]
1126
+ #
1127
+ # @!attribute [rw] processing_configuration
1128
+ # The data processing configuration.
1129
+ # @return [Types::ProcessingConfiguration]
1130
+ #
1131
+ # @!attribute [rw] s3_backup_mode
1132
+ # The Amazon S3 backup mode.
1133
+ # @return [String]
1134
+ #
1135
+ # @!attribute [rw] s3_backup_description
1136
+ # The configuration for backup in Amazon S3.
1137
+ # @return [Types::S3DestinationDescription]
1138
+ #
1139
+ class ExtendedS3DestinationDescription < Struct.new(
1140
+ :role_arn,
1141
+ :bucket_arn,
1142
+ :prefix,
1143
+ :buffering_hints,
1144
+ :compression_format,
1145
+ :encryption_configuration,
1146
+ :cloud_watch_logging_options,
1147
+ :processing_configuration,
1148
+ :s3_backup_mode,
1149
+ :s3_backup_description)
1150
+ include Aws::Structure
1151
+ end
722
1152
 
723
- # Configures retry behavior in the event that Firehose is unable to
724
- # deliver documents to Amazon ES.
725
- # @note When making an API call, pass ElasticsearchRetryOptions
726
- # data as a hash:
727
- #
728
- # {
729
- # duration_in_seconds: 1,
730
- # }
731
- # @!attribute [rw] duration_in_seconds
732
- # After an initial failure to deliver to Amazon ES, the total amount
733
- # of time during which Firehose re-attempts delivery (including the
734
- # first attempt). After this time has elapsed, the failed documents
735
- # are written to Amazon S3. Default value is 300 seconds (5 minutes).
736
- # A value of 0 (zero) results in no retries.
737
- # @return [Integer]
738
- class ElasticsearchRetryOptions < Struct.new(
739
- :duration_in_seconds)
740
- include Aws::Structure
741
- end
1153
+ # Describes an update for a destination in Amazon S3.
1154
+ #
1155
+ # @note When making an API call, you may pass ExtendedS3DestinationUpdate
1156
+ # data as a hash:
1157
+ #
1158
+ # {
1159
+ # role_arn: "RoleARN",
1160
+ # bucket_arn: "BucketARN",
1161
+ # prefix: "Prefix",
1162
+ # buffering_hints: {
1163
+ # size_in_m_bs: 1,
1164
+ # interval_in_seconds: 1,
1165
+ # },
1166
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1167
+ # encryption_configuration: {
1168
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
1169
+ # kms_encryption_config: {
1170
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1171
+ # },
1172
+ # },
1173
+ # cloud_watch_logging_options: {
1174
+ # enabled: false,
1175
+ # log_group_name: "LogGroupName",
1176
+ # log_stream_name: "LogStreamName",
1177
+ # },
1178
+ # processing_configuration: {
1179
+ # enabled: false,
1180
+ # processors: [
1181
+ # {
1182
+ # type: "Lambda", # required, accepts Lambda
1183
+ # parameters: [
1184
+ # {
1185
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
1186
+ # parameter_value: "ProcessorParameterValue", # required
1187
+ # },
1188
+ # ],
1189
+ # },
1190
+ # ],
1191
+ # },
1192
+ # s3_backup_mode: "Disabled", # accepts Disabled, Enabled
1193
+ # s3_backup_update: {
1194
+ # role_arn: "RoleARN",
1195
+ # bucket_arn: "BucketARN",
1196
+ # prefix: "Prefix",
1197
+ # buffering_hints: {
1198
+ # size_in_m_bs: 1,
1199
+ # interval_in_seconds: 1,
1200
+ # },
1201
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1202
+ # encryption_configuration: {
1203
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
1204
+ # kms_encryption_config: {
1205
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1206
+ # },
1207
+ # },
1208
+ # cloud_watch_logging_options: {
1209
+ # enabled: false,
1210
+ # log_group_name: "LogGroupName",
1211
+ # log_stream_name: "LogStreamName",
1212
+ # },
1213
+ # },
1214
+ # }
1215
+ #
1216
+ # @!attribute [rw] role_arn
1217
+ # The ARN of the AWS credentials.
1218
+ # @return [String]
1219
+ #
1220
+ # @!attribute [rw] bucket_arn
1221
+ # The ARN of the S3 bucket.
1222
+ # @return [String]
1223
+ #
1224
+ # @!attribute [rw] prefix
1225
+ # The "YYYY/MM/DD/HH" time format prefix is automatically used for
1226
+ # delivered S3 files. You can specify an extra prefix to be added in
1227
+ # front of the time format prefix. Note that if the prefix ends with a
1228
+ # slash, it appears as a folder in the S3 bucket. For more
1229
+ # information, see [Amazon S3 Object Name Format][1] in the *Amazon
1230
+ # Kinesis Firehose Developer Guide*.
1231
+ #
1232
+ #
1233
+ #
1234
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
1235
+ # @return [String]
1236
+ #
1237
+ # @!attribute [rw] buffering_hints
1238
+ # The buffering option.
1239
+ # @return [Types::BufferingHints]
1240
+ #
1241
+ # @!attribute [rw] compression_format
1242
+ # The compression format. If no value is specified, the default is
1243
+ # `UNCOMPRESSED`.
1244
+ # @return [String]
1245
+ #
1246
+ # @!attribute [rw] encryption_configuration
1247
+ # The encryption configuration. If no value is specified, the default
1248
+ # is no encryption.
1249
+ # @return [Types::EncryptionConfiguration]
1250
+ #
1251
+ # @!attribute [rw] cloud_watch_logging_options
1252
+ # The CloudWatch logging options for your delivery stream.
1253
+ # @return [Types::CloudWatchLoggingOptions]
1254
+ #
1255
+ # @!attribute [rw] processing_configuration
1256
+ # The data processing configuration.
1257
+ # @return [Types::ProcessingConfiguration]
1258
+ #
1259
+ # @!attribute [rw] s3_backup_mode
1260
+ # Enables or disables Amazon S3 backup mode.
1261
+ # @return [String]
1262
+ #
1263
+ # @!attribute [rw] s3_backup_update
1264
+ # The Amazon S3 destination for backup.
1265
+ # @return [Types::S3DestinationUpdate]
1266
+ #
1267
+ class ExtendedS3DestinationUpdate < Struct.new(
1268
+ :role_arn,
1269
+ :bucket_arn,
1270
+ :prefix,
1271
+ :buffering_hints,
1272
+ :compression_format,
1273
+ :encryption_configuration,
1274
+ :cloud_watch_logging_options,
1275
+ :processing_configuration,
1276
+ :s3_backup_mode,
1277
+ :s3_backup_update)
1278
+ include Aws::Structure
1279
+ end
742
1280
 
743
- # Describes the encryption for a destination in Amazon S3.
744
- # @note When making an API call, pass EncryptionConfiguration
745
- # data as a hash:
746
- #
747
- # {
748
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
749
- # kms_encryption_config: {
750
- # awskms_key_arn: "AWSKMSKeyARN", # required
751
- # },
752
- # }
753
- # @!attribute [rw] no_encryption_config
754
- # Specifically override existing encryption information to ensure no
755
- # encryption is used.
756
- # @return [String]
757
- #
758
- # @!attribute [rw] kms_encryption_config
759
- # The encryption key.
760
- # @return [Types::KMSEncryptionConfig]
761
- class EncryptionConfiguration < Struct.new(
762
- :no_encryption_config,
763
- :kms_encryption_config)
764
- include Aws::Structure
765
- end
1281
+ # Describes an encryption key for a destination in Amazon S3.
1282
+ #
1283
+ # @note When making an API call, you may pass KMSEncryptionConfig
1284
+ # data as a hash:
1285
+ #
1286
+ # {
1287
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1288
+ # }
1289
+ #
1290
+ # @!attribute [rw] awskms_key_arn
1291
+ # The ARN of the encryption key. Must belong to the same region as the
1292
+ # destination Amazon S3 bucket.
1293
+ # @return [String]
1294
+ #
1295
+ class KMSEncryptionConfig < Struct.new(
1296
+ :awskms_key_arn)
1297
+ include Aws::Structure
1298
+ end
766
1299
 
767
- # Describes an encryption key for a destination in Amazon S3.
768
- # @note When making an API call, pass KMSEncryptionConfig
769
- # data as a hash:
770
- #
771
- # {
772
- # awskms_key_arn: "AWSKMSKeyARN", # required
773
- # }
774
- # @!attribute [rw] awskms_key_arn
775
- # The ARN of the encryption key. Must belong to the same region as the
776
- # destination Amazon S3 bucket.
777
- # @return [String]
778
- class KMSEncryptionConfig < Struct.new(
779
- :awskms_key_arn)
780
- include Aws::Structure
781
- end
1300
+ # @note When making an API call, you may pass ListDeliveryStreamsInput
1301
+ # data as a hash:
1302
+ #
1303
+ # {
1304
+ # limit: 1,
1305
+ # exclusive_start_delivery_stream_name: "DeliveryStreamName",
1306
+ # }
1307
+ #
1308
+ # @!attribute [rw] limit
1309
+ # The maximum number of delivery streams to list.
1310
+ # @return [Integer]
1311
+ #
1312
+ # @!attribute [rw] exclusive_start_delivery_stream_name
1313
+ # The name of the delivery stream to start the list with.
1314
+ # @return [String]
1315
+ #
1316
+ class ListDeliveryStreamsInput < Struct.new(
1317
+ :limit,
1318
+ :exclusive_start_delivery_stream_name)
1319
+ include Aws::Structure
1320
+ end
782
1321
 
783
- # Contains the parameters for ListDeliveryStreams.
784
- # @note When making an API call, pass ListDeliveryStreamsInput
785
- # data as a hash:
786
- #
787
- # {
788
- # limit: 1,
789
- # exclusive_start_delivery_stream_name: "DeliveryStreamName",
790
- # }
791
- # @!attribute [rw] limit
792
- # The maximum number of delivery streams to list.
793
- # @return [Integer]
794
- #
795
- # @!attribute [rw] exclusive_start_delivery_stream_name
796
- # The name of the delivery stream to start the list with.
797
- # @return [String]
798
- class ListDeliveryStreamsInput < Struct.new(
799
- :limit,
800
- :exclusive_start_delivery_stream_name)
801
- include Aws::Structure
802
- end
1322
+ # @!attribute [rw] delivery_stream_names
1323
+ # The names of the delivery streams.
1324
+ # @return [Array<String>]
1325
+ #
1326
+ # @!attribute [rw] has_more_delivery_streams
1327
+ # Indicates whether there are more delivery streams available to list.
1328
+ # @return [Boolean]
1329
+ #
1330
+ class ListDeliveryStreamsOutput < Struct.new(
1331
+ :delivery_stream_names,
1332
+ :has_more_delivery_streams)
1333
+ include Aws::Structure
1334
+ end
803
1335
 
804
- # Contains the output of ListDeliveryStreams.
805
- # @!attribute [rw] delivery_stream_names
806
- # The names of the delivery streams.
807
- # @return [Array<String>]
808
- #
809
- # @!attribute [rw] has_more_delivery_streams
810
- # Indicates whether there are more delivery streams available to list.
811
- # @return [Boolean]
812
- class ListDeliveryStreamsOutput < Struct.new(
813
- :delivery_stream_names,
814
- :has_more_delivery_streams)
815
- include Aws::Structure
816
- end
1336
+ # Describes a data processing configuration.
1337
+ #
1338
+ # @note When making an API call, you may pass ProcessingConfiguration
1339
+ # data as a hash:
1340
+ #
1341
+ # {
1342
+ # enabled: false,
1343
+ # processors: [
1344
+ # {
1345
+ # type: "Lambda", # required, accepts Lambda
1346
+ # parameters: [
1347
+ # {
1348
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
1349
+ # parameter_value: "ProcessorParameterValue", # required
1350
+ # },
1351
+ # ],
1352
+ # },
1353
+ # ],
1354
+ # }
1355
+ #
1356
+ # @!attribute [rw] enabled
1357
+ # Enables or disables data processing.
1358
+ # @return [Boolean]
1359
+ #
1360
+ # @!attribute [rw] processors
1361
+ # The data processors.
1362
+ # @return [Array<Types::Processor>]
1363
+ #
1364
+ class ProcessingConfiguration < Struct.new(
1365
+ :enabled,
1366
+ :processors)
1367
+ include Aws::Structure
1368
+ end
817
1369
 
818
- # Contains the parameters for PutRecordBatch.
819
- # @note When making an API call, pass PutRecordBatchInput
820
- # data as a hash:
821
- #
822
- # {
823
- # delivery_stream_name: "DeliveryStreamName", # required
824
- # records: [ # required
825
- # {
826
- # data: "data", # required
827
- # },
828
- # ],
829
- # }
830
- # @!attribute [rw] delivery_stream_name
831
- # The name of the delivery stream.
832
- # @return [String]
833
- #
834
- # @!attribute [rw] records
835
- # One or more records.
836
- # @return [Array<Types::Record>]
837
- class PutRecordBatchInput < Struct.new(
838
- :delivery_stream_name,
839
- :records)
840
- include Aws::Structure
841
- end
1370
+ # Describes a data processor.
1371
+ #
1372
+ # @note When making an API call, you may pass Processor
1373
+ # data as a hash:
1374
+ #
1375
+ # {
1376
+ # type: "Lambda", # required, accepts Lambda
1377
+ # parameters: [
1378
+ # {
1379
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
1380
+ # parameter_value: "ProcessorParameterValue", # required
1381
+ # },
1382
+ # ],
1383
+ # }
1384
+ #
1385
+ # @!attribute [rw] type
1386
+ # The type of processor.
1387
+ # @return [String]
1388
+ #
1389
+ # @!attribute [rw] parameters
1390
+ # The processor parameters.
1391
+ # @return [Array<Types::ProcessorParameter>]
1392
+ #
1393
+ class Processor < Struct.new(
1394
+ :type,
1395
+ :parameters)
1396
+ include Aws::Structure
1397
+ end
842
1398
 
843
- # Contains the output of PutRecordBatch.
844
- # @!attribute [rw] failed_put_count
845
- # The number of unsuccessfully written records.
846
- # @return [Integer]
847
- #
848
- # @!attribute [rw] request_responses
849
- # The results for the individual records. The index of each element
850
- # matches the same index in which records were sent.
851
- # @return [Array<Types::PutRecordBatchResponseEntry>]
852
- class PutRecordBatchOutput < Struct.new(
853
- :failed_put_count,
854
- :request_responses)
855
- include Aws::Structure
856
- end
1399
+ # Describes the processor parameter.
1400
+ #
1401
+ # @note When making an API call, you may pass ProcessorParameter
1402
+ # data as a hash:
1403
+ #
1404
+ # {
1405
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
1406
+ # parameter_value: "ProcessorParameterValue", # required
1407
+ # }
1408
+ #
1409
+ # @!attribute [rw] parameter_name
1410
+ # The name of the parameter.
1411
+ # @return [String]
1412
+ #
1413
+ # @!attribute [rw] parameter_value
1414
+ # The parameter value.
1415
+ # @return [String]
1416
+ #
1417
+ class ProcessorParameter < Struct.new(
1418
+ :parameter_name,
1419
+ :parameter_value)
1420
+ include Aws::Structure
1421
+ end
857
1422
 
858
- # Contains the result for an individual record from a PutRecordBatch
859
- # request. If the record is successfully added to your delivery stream,
860
- # it receives a record ID. If the record fails to be added to your
861
- # delivery stream, the result includes an error code and an error
862
- # message.
863
- # @!attribute [rw] record_id
864
- # The ID of the record.
865
- # @return [String]
866
- #
867
- # @!attribute [rw] error_code
868
- # The error code for an individual record result.
869
- # @return [String]
870
- #
871
- # @!attribute [rw] error_message
872
- # The error message for an individual record result.
873
- # @return [String]
874
- class PutRecordBatchResponseEntry < Struct.new(
875
- :record_id,
876
- :error_code,
877
- :error_message)
878
- include Aws::Structure
879
- end
1423
+ # @note When making an API call, you may pass PutRecordBatchInput
1424
+ # data as a hash:
1425
+ #
1426
+ # {
1427
+ # delivery_stream_name: "DeliveryStreamName", # required
1428
+ # records: [ # required
1429
+ # {
1430
+ # data: "data", # required
1431
+ # },
1432
+ # ],
1433
+ # }
1434
+ #
1435
+ # @!attribute [rw] delivery_stream_name
1436
+ # The name of the delivery stream.
1437
+ # @return [String]
1438
+ #
1439
+ # @!attribute [rw] records
1440
+ # One or more records.
1441
+ # @return [Array<Types::Record>]
1442
+ #
1443
+ class PutRecordBatchInput < Struct.new(
1444
+ :delivery_stream_name,
1445
+ :records)
1446
+ include Aws::Structure
1447
+ end
880
1448
 
881
- # Contains the parameters for PutRecord.
882
- # @note When making an API call, pass PutRecordInput
883
- # data as a hash:
884
- #
885
- # {
886
- # delivery_stream_name: "DeliveryStreamName", # required
887
- # record: { # required
888
- # data: "data", # required
889
- # },
890
- # }
891
- # @!attribute [rw] delivery_stream_name
892
- # The name of the delivery stream.
893
- # @return [String]
894
- #
895
- # @!attribute [rw] record
896
- # The record.
897
- # @return [Types::Record]
898
- class PutRecordInput < Struct.new(
899
- :delivery_stream_name,
900
- :record)
901
- include Aws::Structure
902
- end
1449
+ # @!attribute [rw] failed_put_count
1450
+ # The number of records that might have failed processing.
1451
+ # @return [Integer]
1452
+ #
1453
+ # @!attribute [rw] request_responses
1454
+ # The results array. For each record, the index of the response
1455
+ # element is the same as the index used in the request array.
1456
+ # @return [Array<Types::PutRecordBatchResponseEntry>]
1457
+ #
1458
+ class PutRecordBatchOutput < Struct.new(
1459
+ :failed_put_count,
1460
+ :request_responses)
1461
+ include Aws::Structure
1462
+ end
903
1463
 
904
- # Contains the output of PutRecord.
905
- # @!attribute [rw] record_id
906
- # The ID of the record.
907
- # @return [String]
908
- class PutRecordOutput < Struct.new(
909
- :record_id)
910
- include Aws::Structure
911
- end
1464
+ # Contains the result for an individual record from a PutRecordBatch
1465
+ # request. If the record is successfully added to your delivery stream,
1466
+ # it receives a record ID. If the record fails to be added to your
1467
+ # delivery stream, the result includes an error code and an error
1468
+ # message.
1469
+ #
1470
+ # @!attribute [rw] record_id
1471
+ # The ID of the record.
1472
+ # @return [String]
1473
+ #
1474
+ # @!attribute [rw] error_code
1475
+ # The error code for an individual record result.
1476
+ # @return [String]
1477
+ #
1478
+ # @!attribute [rw] error_message
1479
+ # The error message for an individual record result.
1480
+ # @return [String]
1481
+ #
1482
+ class PutRecordBatchResponseEntry < Struct.new(
1483
+ :record_id,
1484
+ :error_code,
1485
+ :error_message)
1486
+ include Aws::Structure
1487
+ end
912
1488
 
913
- # The unit of data in a delivery stream.
914
- # @note When making an API call, pass Record
915
- # data as a hash:
916
- #
917
- # {
918
- # data: "data", # required
919
- # }
920
- # @!attribute [rw] data
921
- # The data blob, which is base64-encoded when the blob is serialized.
922
- # The maximum size of the data blob, before base64-encoding, is 1,000
923
- # KB.
924
- # @return [String]
925
- class Record < Struct.new(
926
- :data)
927
- include Aws::Structure
928
- end
1489
+ # @note When making an API call, you may pass PutRecordInput
1490
+ # data as a hash:
1491
+ #
1492
+ # {
1493
+ # delivery_stream_name: "DeliveryStreamName", # required
1494
+ # record: { # required
1495
+ # data: "data", # required
1496
+ # },
1497
+ # }
1498
+ #
1499
+ # @!attribute [rw] delivery_stream_name
1500
+ # The name of the delivery stream.
1501
+ # @return [String]
1502
+ #
1503
+ # @!attribute [rw] record
1504
+ # The record.
1505
+ # @return [Types::Record]
1506
+ #
1507
+ class PutRecordInput < Struct.new(
1508
+ :delivery_stream_name,
1509
+ :record)
1510
+ include Aws::Structure
1511
+ end
929
1512
 
930
- # Describes the configuration of a destination in Amazon Redshift.
931
- # @note When making an API call, pass RedshiftDestinationConfiguration
932
- # data as a hash:
933
- #
934
- # {
935
- # role_arn: "RoleARN", # required
936
- # cluster_jdbcurl: "ClusterJDBCURL", # required
937
- # copy_command: { # required
938
- # data_table_name: "DataTableName", # required
939
- # data_table_columns: "DataTableColumns",
940
- # copy_options: "CopyOptions",
941
- # },
942
- # username: "Username", # required
943
- # password: "Password", # required
944
- # retry_options: {
945
- # duration_in_seconds: 1,
946
- # },
947
- # s3_configuration: { # required
948
- # role_arn: "RoleARN", # required
949
- # bucket_arn: "BucketARN", # required
950
- # prefix: "Prefix",
951
- # buffering_hints: {
952
- # size_in_m_bs: 1,
953
- # interval_in_seconds: 1,
954
- # },
955
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
956
- # encryption_configuration: {
957
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
958
- # kms_encryption_config: {
959
- # awskms_key_arn: "AWSKMSKeyARN", # required
960
- # },
961
- # },
962
- # cloud_watch_logging_options: {
963
- # enabled: false,
964
- # log_group_name: "LogGroupName",
965
- # log_stream_name: "LogStreamName",
966
- # },
967
- # },
968
- # cloud_watch_logging_options: {
969
- # enabled: false,
970
- # log_group_name: "LogGroupName",
971
- # log_stream_name: "LogStreamName",
972
- # },
973
- # }
974
- # @!attribute [rw] role_arn
975
- # The ARN of the AWS credentials.
976
- # @return [String]
977
- #
978
- # @!attribute [rw] cluster_jdbcurl
979
- # The database connection string.
980
- # @return [String]
981
- #
982
- # @!attribute [rw] copy_command
983
- # The `COPY` command.
984
- # @return [Types::CopyCommand]
985
- #
986
- # @!attribute [rw] username
987
- # The name of the user.
988
- # @return [String]
989
- #
990
- # @!attribute [rw] password
991
- # The user password.
992
- # @return [String]
993
- #
994
- # @!attribute [rw] retry_options
995
- # Configures retry behavior in the event that Firehose is unable to
996
- # deliver documents to Amazon Redshift. Default value is 3600 (60
997
- # minutes).
998
- # @return [Types::RedshiftRetryOptions]
999
- #
1000
- # @!attribute [rw] s3_configuration
1001
- # The S3 configuration for the intermediate location from which Amazon
1002
- # Redshift obtains data. Restrictions are described in the topic for
1003
- # CreateDeliveryStream.
1004
- #
1005
- # The compression formats `SNAPPY` or `ZIP` cannot be specified in
1006
- # **RedshiftDestinationConfiguration.S3Configuration** because the
1007
- # Amazon Redshift `COPY` operation that reads from the S3 bucket
1008
- # doesn't support these compression formats.
1009
- # @return [Types::S3DestinationConfiguration]
1010
- #
1011
- # @!attribute [rw] cloud_watch_logging_options
1012
- # Describes CloudWatch logging options for your delivery stream.
1013
- # @return [Types::CloudWatchLoggingOptions]
1014
- class RedshiftDestinationConfiguration < Struct.new(
1015
- :role_arn,
1016
- :cluster_jdbcurl,
1017
- :copy_command,
1018
- :username,
1019
- :password,
1020
- :retry_options,
1021
- :s3_configuration,
1022
- :cloud_watch_logging_options)
1023
- include Aws::Structure
1024
- end
1513
+ # @!attribute [rw] record_id
1514
+ # The ID of the record.
1515
+ # @return [String]
1516
+ #
1517
+ class PutRecordOutput < Struct.new(
1518
+ :record_id)
1519
+ include Aws::Structure
1520
+ end
1025
1521
 
1026
- # Describes a destination in Amazon Redshift.
1027
- # @!attribute [rw] role_arn
1028
- # The ARN of the AWS credentials.
1029
- # @return [String]
1030
- #
1031
- # @!attribute [rw] cluster_jdbcurl
1032
- # The database connection string.
1033
- # @return [String]
1034
- #
1035
- # @!attribute [rw] copy_command
1036
- # The `COPY` command.
1037
- # @return [Types::CopyCommand]
1038
- #
1039
- # @!attribute [rw] username
1040
- # The name of the user.
1041
- # @return [String]
1042
- #
1043
- # @!attribute [rw] retry_options
1044
- # Configures retry behavior in the event that Firehose is unable to
1045
- # deliver documents to Amazon Redshift. Default value is 3600 (60
1046
- # minutes).
1047
- # @return [Types::RedshiftRetryOptions]
1048
- #
1049
- # @!attribute [rw] s3_destination_description
1050
- # The Amazon S3 destination.
1051
- # @return [Types::S3DestinationDescription]
1052
- #
1053
- # @!attribute [rw] cloud_watch_logging_options
1054
- # Describes CloudWatch logging options for your delivery stream.
1055
- # @return [Types::CloudWatchLoggingOptions]
1056
- class RedshiftDestinationDescription < Struct.new(
1057
- :role_arn,
1058
- :cluster_jdbcurl,
1059
- :copy_command,
1060
- :username,
1061
- :retry_options,
1062
- :s3_destination_description,
1063
- :cloud_watch_logging_options)
1064
- include Aws::Structure
1065
- end
1522
+ # The unit of data in a delivery stream.
1523
+ #
1524
+ # @note When making an API call, you may pass Record
1525
+ # data as a hash:
1526
+ #
1527
+ # {
1528
+ # data: "data", # required
1529
+ # }
1530
+ #
1531
+ # @!attribute [rw] data
1532
+ # The data blob, which is base64-encoded when the blob is serialized.
1533
+ # The maximum size of the data blob, before base64-encoding, is 1,000
1534
+ # KB.
1535
+ # @return [String]
1536
+ #
1537
+ class Record < Struct.new(
1538
+ :data)
1539
+ include Aws::Structure
1540
+ end
1066
1541
 
1067
- # Describes an update for a destination in Amazon Redshift.
1068
- # @note When making an API call, pass RedshiftDestinationUpdate
1069
- # data as a hash:
1070
- #
1071
- # {
1072
- # role_arn: "RoleARN",
1073
- # cluster_jdbcurl: "ClusterJDBCURL",
1074
- # copy_command: {
1075
- # data_table_name: "DataTableName", # required
1076
- # data_table_columns: "DataTableColumns",
1077
- # copy_options: "CopyOptions",
1078
- # },
1079
- # username: "Username",
1080
- # password: "Password",
1081
- # retry_options: {
1082
- # duration_in_seconds: 1,
1083
- # },
1084
- # s3_update: {
1085
- # role_arn: "RoleARN",
1086
- # bucket_arn: "BucketARN",
1087
- # prefix: "Prefix",
1088
- # buffering_hints: {
1089
- # size_in_m_bs: 1,
1090
- # interval_in_seconds: 1,
1091
- # },
1092
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1093
- # encryption_configuration: {
1094
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
1095
- # kms_encryption_config: {
1096
- # awskms_key_arn: "AWSKMSKeyARN", # required
1097
- # },
1098
- # },
1099
- # cloud_watch_logging_options: {
1100
- # enabled: false,
1101
- # log_group_name: "LogGroupName",
1102
- # log_stream_name: "LogStreamName",
1103
- # },
1104
- # },
1105
- # cloud_watch_logging_options: {
1106
- # enabled: false,
1107
- # log_group_name: "LogGroupName",
1108
- # log_stream_name: "LogStreamName",
1109
- # },
1110
- # }
1111
- # @!attribute [rw] role_arn
1112
- # The ARN of the AWS credentials.
1113
- # @return [String]
1114
- #
1115
- # @!attribute [rw] cluster_jdbcurl
1116
- # The database connection string.
1117
- # @return [String]
1118
- #
1119
- # @!attribute [rw] copy_command
1120
- # The `COPY` command.
1121
- # @return [Types::CopyCommand]
1122
- #
1123
- # @!attribute [rw] username
1124
- # The name of the user.
1125
- # @return [String]
1126
- #
1127
- # @!attribute [rw] password
1128
- # The user password.
1129
- # @return [String]
1130
- #
1131
- # @!attribute [rw] retry_options
1132
- # Configures retry behavior in the event that Firehose is unable to
1133
- # deliver documents to Amazon Redshift. Default value is 3600 (60
1134
- # minutes).
1135
- # @return [Types::RedshiftRetryOptions]
1136
- #
1137
- # @!attribute [rw] s3_update
1138
- # The Amazon S3 destination.
1139
- #
1140
- # The compression formats `SNAPPY` or `ZIP` cannot be specified in
1141
- # **RedshiftDestinationUpdate.S3Update** because the Amazon Redshift
1142
- # `COPY` operation that reads from the S3 bucket doesn't support
1143
- # these compression formats.
1144
- # @return [Types::S3DestinationUpdate]
1145
- #
1146
- # @!attribute [rw] cloud_watch_logging_options
1147
- # Describes CloudWatch logging options for your delivery stream.
1148
- # @return [Types::CloudWatchLoggingOptions]
1149
- class RedshiftDestinationUpdate < Struct.new(
1150
- :role_arn,
1151
- :cluster_jdbcurl,
1152
- :copy_command,
1153
- :username,
1154
- :password,
1155
- :retry_options,
1156
- :s3_update,
1157
- :cloud_watch_logging_options)
1158
- include Aws::Structure
1159
- end
1542
+ # Describes the configuration of a destination in Amazon Redshift.
1543
+ #
1544
+ # @note When making an API call, you may pass RedshiftDestinationConfiguration
1545
+ # data as a hash:
1546
+ #
1547
+ # {
1548
+ # role_arn: "RoleARN", # required
1549
+ # cluster_jdbcurl: "ClusterJDBCURL", # required
1550
+ # copy_command: { # required
1551
+ # data_table_name: "DataTableName", # required
1552
+ # data_table_columns: "DataTableColumns",
1553
+ # copy_options: "CopyOptions",
1554
+ # },
1555
+ # username: "Username", # required
1556
+ # password: "Password", # required
1557
+ # retry_options: {
1558
+ # duration_in_seconds: 1,
1559
+ # },
1560
+ # s3_configuration: { # required
1561
+ # role_arn: "RoleARN", # required
1562
+ # bucket_arn: "BucketARN", # required
1563
+ # prefix: "Prefix",
1564
+ # buffering_hints: {
1565
+ # size_in_m_bs: 1,
1566
+ # interval_in_seconds: 1,
1567
+ # },
1568
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1569
+ # encryption_configuration: {
1570
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
1571
+ # kms_encryption_config: {
1572
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1573
+ # },
1574
+ # },
1575
+ # cloud_watch_logging_options: {
1576
+ # enabled: false,
1577
+ # log_group_name: "LogGroupName",
1578
+ # log_stream_name: "LogStreamName",
1579
+ # },
1580
+ # },
1581
+ # processing_configuration: {
1582
+ # enabled: false,
1583
+ # processors: [
1584
+ # {
1585
+ # type: "Lambda", # required, accepts Lambda
1586
+ # parameters: [
1587
+ # {
1588
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
1589
+ # parameter_value: "ProcessorParameterValue", # required
1590
+ # },
1591
+ # ],
1592
+ # },
1593
+ # ],
1594
+ # },
1595
+ # s3_backup_mode: "Disabled", # accepts Disabled, Enabled
1596
+ # s3_backup_configuration: {
1597
+ # role_arn: "RoleARN", # required
1598
+ # bucket_arn: "BucketARN", # required
1599
+ # prefix: "Prefix",
1600
+ # buffering_hints: {
1601
+ # size_in_m_bs: 1,
1602
+ # interval_in_seconds: 1,
1603
+ # },
1604
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1605
+ # encryption_configuration: {
1606
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
1607
+ # kms_encryption_config: {
1608
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1609
+ # },
1610
+ # },
1611
+ # cloud_watch_logging_options: {
1612
+ # enabled: false,
1613
+ # log_group_name: "LogGroupName",
1614
+ # log_stream_name: "LogStreamName",
1615
+ # },
1616
+ # },
1617
+ # cloud_watch_logging_options: {
1618
+ # enabled: false,
1619
+ # log_group_name: "LogGroupName",
1620
+ # log_stream_name: "LogStreamName",
1621
+ # },
1622
+ # }
1623
+ #
1624
+ # @!attribute [rw] role_arn
1625
+ # The ARN of the AWS credentials.
1626
+ # @return [String]
1627
+ #
1628
+ # @!attribute [rw] cluster_jdbcurl
1629
+ # The database connection string.
1630
+ # @return [String]
1631
+ #
1632
+ # @!attribute [rw] copy_command
1633
+ # The `COPY` command.
1634
+ # @return [Types::CopyCommand]
1635
+ #
1636
+ # @!attribute [rw] username
1637
+ # The name of the user.
1638
+ # @return [String]
1639
+ #
1640
+ # @!attribute [rw] password
1641
+ # The user password.
1642
+ # @return [String]
1643
+ #
1644
+ # @!attribute [rw] retry_options
1645
+ # The retry behavior in the event that Firehose is unable to deliver
1646
+ # documents to Amazon Redshift. Default value is 3600 (60 minutes).
1647
+ # @return [Types::RedshiftRetryOptions]
1648
+ #
1649
+ # @!attribute [rw] s3_configuration
1650
+ # The configuration for the intermediate Amazon S3 location from which
1651
+ # Amazon Redshift obtains data. Restrictions are described in the
1652
+ # topic for CreateDeliveryStream.
1653
+ #
1654
+ # The compression formats `SNAPPY` or `ZIP` cannot be specified in
1655
+ # **RedshiftDestinationConfiguration.S3Configuration** because the
1656
+ # Amazon Redshift `COPY` operation that reads from the S3 bucket
1657
+ # doesn't support these compression formats.
1658
+ # @return [Types::S3DestinationConfiguration]
1659
+ #
1660
+ # @!attribute [rw] processing_configuration
1661
+ # The data processing configuration.
1662
+ # @return [Types::ProcessingConfiguration]
1663
+ #
1664
+ # @!attribute [rw] s3_backup_mode
1665
+ # The Amazon S3 backup mode.
1666
+ # @return [String]
1667
+ #
1668
+ # @!attribute [rw] s3_backup_configuration
1669
+ # The configuration for backup in Amazon S3.
1670
+ # @return [Types::S3DestinationConfiguration]
1671
+ #
1672
+ # @!attribute [rw] cloud_watch_logging_options
1673
+ # The CloudWatch logging options for your delivery stream.
1674
+ # @return [Types::CloudWatchLoggingOptions]
1675
+ #
1676
+ class RedshiftDestinationConfiguration < Struct.new(
1677
+ :role_arn,
1678
+ :cluster_jdbcurl,
1679
+ :copy_command,
1680
+ :username,
1681
+ :password,
1682
+ :retry_options,
1683
+ :s3_configuration,
1684
+ :processing_configuration,
1685
+ :s3_backup_mode,
1686
+ :s3_backup_configuration,
1687
+ :cloud_watch_logging_options)
1688
+ include Aws::Structure
1689
+ end
1160
1690
 
1161
- # Configures retry behavior in the event that Firehose is unable to
1162
- # deliver documents to Amazon Redshift.
1163
- # @note When making an API call, pass RedshiftRetryOptions
1164
- # data as a hash:
1165
- #
1166
- # {
1167
- # duration_in_seconds: 1,
1168
- # }
1169
- # @!attribute [rw] duration_in_seconds
1170
- # The length of time during which Firehose retries delivery after a
1171
- # failure, starting from the initial request and including the first
1172
- # attempt. The default value is 3600 seconds (60 minutes). Firehose
1173
- # does not retry if the value of `DurationInSeconds` is 0 (zero) or if
1174
- # the first delivery attempt takes longer than the current value.
1175
- # @return [Integer]
1176
- class RedshiftRetryOptions < Struct.new(
1177
- :duration_in_seconds)
1178
- include Aws::Structure
1179
- end
1691
+ # Describes a destination in Amazon Redshift.
1692
+ #
1693
+ # @!attribute [rw] role_arn
1694
+ # The ARN of the AWS credentials.
1695
+ # @return [String]
1696
+ #
1697
+ # @!attribute [rw] cluster_jdbcurl
1698
+ # The database connection string.
1699
+ # @return [String]
1700
+ #
1701
+ # @!attribute [rw] copy_command
1702
+ # The `COPY` command.
1703
+ # @return [Types::CopyCommand]
1704
+ #
1705
+ # @!attribute [rw] username
1706
+ # The name of the user.
1707
+ # @return [String]
1708
+ #
1709
+ # @!attribute [rw] retry_options
1710
+ # The retry behavior in the event that Firehose is unable to deliver
1711
+ # documents to Amazon Redshift. Default value is 3600 (60 minutes).
1712
+ # @return [Types::RedshiftRetryOptions]
1713
+ #
1714
+ # @!attribute [rw] s3_destination_description
1715
+ # The Amazon S3 destination.
1716
+ # @return [Types::S3DestinationDescription]
1717
+ #
1718
+ # @!attribute [rw] processing_configuration
1719
+ # The data processing configuration.
1720
+ # @return [Types::ProcessingConfiguration]
1721
+ #
1722
+ # @!attribute [rw] s3_backup_mode
1723
+ # The Amazon S3 backup mode.
1724
+ # @return [String]
1725
+ #
1726
+ # @!attribute [rw] s3_backup_description
1727
+ # The configuration for backup in Amazon S3.
1728
+ # @return [Types::S3DestinationDescription]
1729
+ #
1730
+ # @!attribute [rw] cloud_watch_logging_options
1731
+ # The CloudWatch logging options for your delivery stream.
1732
+ # @return [Types::CloudWatchLoggingOptions]
1733
+ #
1734
+ class RedshiftDestinationDescription < Struct.new(
1735
+ :role_arn,
1736
+ :cluster_jdbcurl,
1737
+ :copy_command,
1738
+ :username,
1739
+ :retry_options,
1740
+ :s3_destination_description,
1741
+ :processing_configuration,
1742
+ :s3_backup_mode,
1743
+ :s3_backup_description,
1744
+ :cloud_watch_logging_options)
1745
+ include Aws::Structure
1746
+ end
1180
1747
 
1181
- # Describes the configuration of a destination in Amazon S3.
1182
- # @note When making an API call, pass S3DestinationConfiguration
1183
- # data as a hash:
1184
- #
1185
- # {
1186
- # role_arn: "RoleARN", # required
1187
- # bucket_arn: "BucketARN", # required
1188
- # prefix: "Prefix",
1189
- # buffering_hints: {
1190
- # size_in_m_bs: 1,
1191
- # interval_in_seconds: 1,
1192
- # },
1193
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1194
- # encryption_configuration: {
1195
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
1196
- # kms_encryption_config: {
1197
- # awskms_key_arn: "AWSKMSKeyARN", # required
1198
- # },
1199
- # },
1200
- # cloud_watch_logging_options: {
1201
- # enabled: false,
1202
- # log_group_name: "LogGroupName",
1203
- # log_stream_name: "LogStreamName",
1204
- # },
1205
- # }
1206
- # @!attribute [rw] role_arn
1207
- # The ARN of the AWS credentials.
1208
- # @return [String]
1209
- #
1210
- # @!attribute [rw] bucket_arn
1211
- # The ARN of the S3 bucket.
1212
- # @return [String]
1213
- #
1214
- # @!attribute [rw] prefix
1215
- # The "YYYY/MM/DD/HH" time format prefix is automatically used for
1216
- # delivered S3 files. You can specify an extra prefix to be added in
1217
- # front of the time format prefix. Note that if the prefix ends with a
1218
- # slash, it appears as a folder in the S3 bucket. For more
1219
- # information, see [Amazon S3 Object Name Format][1] in the [Amazon
1220
- # Kinesis Firehose Developer Guide][2].
1221
- #
1222
- #
1223
- #
1224
- # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
1225
- # [2]: http://docs.aws.amazon.com/firehose/latest/dev/
1226
- # @return [String]
1227
- #
1228
- # @!attribute [rw] buffering_hints
1229
- # The buffering option. If no value is specified, **BufferingHints**
1230
- # object default values are used.
1231
- # @return [Types::BufferingHints]
1232
- #
1233
- # @!attribute [rw] compression_format
1234
- # The compression format. If no value is specified, the default is
1235
- # `UNCOMPRESSED`.
1236
- #
1237
- # The compression formats `SNAPPY` or `ZIP` cannot be specified for
1238
- # Amazon Redshift destinations because they are not supported by the
1239
- # Amazon Redshift `COPY` operation that reads from the S3 bucket.
1240
- # @return [String]
1241
- #
1242
- # @!attribute [rw] encryption_configuration
1243
- # The encryption configuration. If no value is specified, the default
1244
- # is no encryption.
1245
- # @return [Types::EncryptionConfiguration]
1246
- #
1247
- # @!attribute [rw] cloud_watch_logging_options
1248
- # Describes CloudWatch logging options for your delivery stream.
1249
- # @return [Types::CloudWatchLoggingOptions]
1250
- class S3DestinationConfiguration < Struct.new(
1251
- :role_arn,
1252
- :bucket_arn,
1253
- :prefix,
1254
- :buffering_hints,
1255
- :compression_format,
1256
- :encryption_configuration,
1257
- :cloud_watch_logging_options)
1258
- include Aws::Structure
1259
- end
1748
+ # Describes an update for a destination in Amazon Redshift.
1749
+ #
1750
+ # @note When making an API call, you may pass RedshiftDestinationUpdate
1751
+ # data as a hash:
1752
+ #
1753
+ # {
1754
+ # role_arn: "RoleARN",
1755
+ # cluster_jdbcurl: "ClusterJDBCURL",
1756
+ # copy_command: {
1757
+ # data_table_name: "DataTableName", # required
1758
+ # data_table_columns: "DataTableColumns",
1759
+ # copy_options: "CopyOptions",
1760
+ # },
1761
+ # username: "Username",
1762
+ # password: "Password",
1763
+ # retry_options: {
1764
+ # duration_in_seconds: 1,
1765
+ # },
1766
+ # s3_update: {
1767
+ # role_arn: "RoleARN",
1768
+ # bucket_arn: "BucketARN",
1769
+ # prefix: "Prefix",
1770
+ # buffering_hints: {
1771
+ # size_in_m_bs: 1,
1772
+ # interval_in_seconds: 1,
1773
+ # },
1774
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1775
+ # encryption_configuration: {
1776
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
1777
+ # kms_encryption_config: {
1778
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1779
+ # },
1780
+ # },
1781
+ # cloud_watch_logging_options: {
1782
+ # enabled: false,
1783
+ # log_group_name: "LogGroupName",
1784
+ # log_stream_name: "LogStreamName",
1785
+ # },
1786
+ # },
1787
+ # processing_configuration: {
1788
+ # enabled: false,
1789
+ # processors: [
1790
+ # {
1791
+ # type: "Lambda", # required, accepts Lambda
1792
+ # parameters: [
1793
+ # {
1794
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
1795
+ # parameter_value: "ProcessorParameterValue", # required
1796
+ # },
1797
+ # ],
1798
+ # },
1799
+ # ],
1800
+ # },
1801
+ # s3_backup_mode: "Disabled", # accepts Disabled, Enabled
1802
+ # s3_backup_update: {
1803
+ # role_arn: "RoleARN",
1804
+ # bucket_arn: "BucketARN",
1805
+ # prefix: "Prefix",
1806
+ # buffering_hints: {
1807
+ # size_in_m_bs: 1,
1808
+ # interval_in_seconds: 1,
1809
+ # },
1810
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1811
+ # encryption_configuration: {
1812
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
1813
+ # kms_encryption_config: {
1814
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1815
+ # },
1816
+ # },
1817
+ # cloud_watch_logging_options: {
1818
+ # enabled: false,
1819
+ # log_group_name: "LogGroupName",
1820
+ # log_stream_name: "LogStreamName",
1821
+ # },
1822
+ # },
1823
+ # cloud_watch_logging_options: {
1824
+ # enabled: false,
1825
+ # log_group_name: "LogGroupName",
1826
+ # log_stream_name: "LogStreamName",
1827
+ # },
1828
+ # }
1829
+ #
1830
+ # @!attribute [rw] role_arn
1831
+ # The ARN of the AWS credentials.
1832
+ # @return [String]
1833
+ #
1834
+ # @!attribute [rw] cluster_jdbcurl
1835
+ # The database connection string.
1836
+ # @return [String]
1837
+ #
1838
+ # @!attribute [rw] copy_command
1839
+ # The `COPY` command.
1840
+ # @return [Types::CopyCommand]
1841
+ #
1842
+ # @!attribute [rw] username
1843
+ # The name of the user.
1844
+ # @return [String]
1845
+ #
1846
+ # @!attribute [rw] password
1847
+ # The user password.
1848
+ # @return [String]
1849
+ #
1850
+ # @!attribute [rw] retry_options
1851
+ # The retry behavior in the event that Firehose is unable to deliver
1852
+ # documents to Amazon Redshift. Default value is 3600 (60 minutes).
1853
+ # @return [Types::RedshiftRetryOptions]
1854
+ #
1855
+ # @!attribute [rw] s3_update
1856
+ # The Amazon S3 destination.
1857
+ #
1858
+ # The compression formats `SNAPPY` or `ZIP` cannot be specified in
1859
+ # **RedshiftDestinationUpdate.S3Update** because the Amazon Redshift
1860
+ # `COPY` operation that reads from the S3 bucket doesn't support
1861
+ # these compression formats.
1862
+ # @return [Types::S3DestinationUpdate]
1863
+ #
1864
+ # @!attribute [rw] processing_configuration
1865
+ # The data processing configuration.
1866
+ # @return [Types::ProcessingConfiguration]
1867
+ #
1868
+ # @!attribute [rw] s3_backup_mode
1869
+ # The Amazon S3 backup mode.
1870
+ # @return [String]
1871
+ #
1872
+ # @!attribute [rw] s3_backup_update
1873
+ # The Amazon S3 destination for backup.
1874
+ # @return [Types::S3DestinationUpdate]
1875
+ #
1876
+ # @!attribute [rw] cloud_watch_logging_options
1877
+ # The CloudWatch logging options for your delivery stream.
1878
+ # @return [Types::CloudWatchLoggingOptions]
1879
+ #
1880
+ class RedshiftDestinationUpdate < Struct.new(
1881
+ :role_arn,
1882
+ :cluster_jdbcurl,
1883
+ :copy_command,
1884
+ :username,
1885
+ :password,
1886
+ :retry_options,
1887
+ :s3_update,
1888
+ :processing_configuration,
1889
+ :s3_backup_mode,
1890
+ :s3_backup_update,
1891
+ :cloud_watch_logging_options)
1892
+ include Aws::Structure
1893
+ end
1260
1894
 
1261
- # Describes a destination in Amazon S3.
1262
- # @!attribute [rw] role_arn
1263
- # The ARN of the AWS credentials.
1264
- # @return [String]
1265
- #
1266
- # @!attribute [rw] bucket_arn
1267
- # The ARN of the S3 bucket.
1268
- # @return [String]
1269
- #
1270
- # @!attribute [rw] prefix
1271
- # The "YYYY/MM/DD/HH" time format prefix is automatically used for
1272
- # delivered S3 files. You can specify an extra prefix to be added in
1273
- # front of the time format prefix. Note that if the prefix ends with a
1274
- # slash, it appears as a folder in the S3 bucket. For more
1275
- # information, see [Amazon S3 Object Name Format][1] in the [Amazon
1276
- # Kinesis Firehose Developer Guide][2].
1277
- #
1278
- #
1279
- #
1280
- # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
1281
- # [2]: http://docs.aws.amazon.com/firehose/latest/dev/
1282
- # @return [String]
1283
- #
1284
- # @!attribute [rw] buffering_hints
1285
- # The buffering option. If no value is specified, **BufferingHints**
1286
- # object default values are used.
1287
- # @return [Types::BufferingHints]
1288
- #
1289
- # @!attribute [rw] compression_format
1290
- # The compression format. If no value is specified, the default is
1291
- # `NOCOMPRESSION`.
1292
- # @return [String]
1293
- #
1294
- # @!attribute [rw] encryption_configuration
1295
- # The encryption configuration. If no value is specified, the default
1296
- # is no encryption.
1297
- # @return [Types::EncryptionConfiguration]
1298
- #
1299
- # @!attribute [rw] cloud_watch_logging_options
1300
- # Describes CloudWatch logging options for your delivery stream.
1301
- # @return [Types::CloudWatchLoggingOptions]
1302
- class S3DestinationDescription < Struct.new(
1303
- :role_arn,
1304
- :bucket_arn,
1305
- :prefix,
1306
- :buffering_hints,
1307
- :compression_format,
1308
- :encryption_configuration,
1309
- :cloud_watch_logging_options)
1310
- include Aws::Structure
1311
- end
1895
+ # Configures retry behavior in the event that Firehose is unable to
1896
+ # deliver documents to Amazon Redshift.
1897
+ #
1898
+ # @note When making an API call, you may pass RedshiftRetryOptions
1899
+ # data as a hash:
1900
+ #
1901
+ # {
1902
+ # duration_in_seconds: 1,
1903
+ # }
1904
+ #
1905
+ # @!attribute [rw] duration_in_seconds
1906
+ # The length of time during which Firehose retries delivery after a
1907
+ # failure, starting from the initial request and including the first
1908
+ # attempt. The default value is 3600 seconds (60 minutes). Firehose
1909
+ # does not retry if the value of `DurationInSeconds` is 0 (zero) or if
1910
+ # the first delivery attempt takes longer than the current value.
1911
+ # @return [Integer]
1912
+ #
1913
+ class RedshiftRetryOptions < Struct.new(
1914
+ :duration_in_seconds)
1915
+ include Aws::Structure
1916
+ end
1312
1917
 
1313
- # Describes an update for a destination in Amazon S3.
1314
- # @note When making an API call, pass S3DestinationUpdate
1315
- # data as a hash:
1316
- #
1317
- # {
1318
- # role_arn: "RoleARN",
1319
- # bucket_arn: "BucketARN",
1320
- # prefix: "Prefix",
1321
- # buffering_hints: {
1322
- # size_in_m_bs: 1,
1323
- # interval_in_seconds: 1,
1324
- # },
1325
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1326
- # encryption_configuration: {
1327
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
1328
- # kms_encryption_config: {
1329
- # awskms_key_arn: "AWSKMSKeyARN", # required
1330
- # },
1331
- # },
1332
- # cloud_watch_logging_options: {
1333
- # enabled: false,
1334
- # log_group_name: "LogGroupName",
1335
- # log_stream_name: "LogStreamName",
1336
- # },
1337
- # }
1338
- # @!attribute [rw] role_arn
1339
- # The ARN of the AWS credentials.
1340
- # @return [String]
1341
- #
1342
- # @!attribute [rw] bucket_arn
1343
- # The ARN of the S3 bucket.
1344
- # @return [String]
1345
- #
1346
- # @!attribute [rw] prefix
1347
- # The "YYYY/MM/DD/HH" time format prefix is automatically used for
1348
- # delivered S3 files. You can specify an extra prefix to be added in
1349
- # front of the time format prefix. Note that if the prefix ends with a
1350
- # slash, it appears as a folder in the S3 bucket. For more
1351
- # information, see [Amazon S3 Object Name Format][1] in the [Amazon
1352
- # Kinesis Firehose Developer Guide][2].
1353
- #
1354
- #
1355
- #
1356
- # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
1357
- # [2]: http://docs.aws.amazon.com/firehose/latest/dev/
1358
- # @return [String]
1359
- #
1360
- # @!attribute [rw] buffering_hints
1361
- # The buffering option. If no value is specified, **BufferingHints**
1362
- # object default values are used.
1363
- # @return [Types::BufferingHints]
1364
- #
1365
- # @!attribute [rw] compression_format
1366
- # The compression format. If no value is specified, the default is
1367
- # `NOCOMPRESSION`.
1368
- #
1369
- # The compression formats `SNAPPY` or `ZIP` cannot be specified for
1370
- # Amazon Redshift destinations because they are not supported by the
1371
- # Amazon Redshift `COPY` operation that reads from the S3 bucket.
1372
- # @return [String]
1373
- #
1374
- # @!attribute [rw] encryption_configuration
1375
- # The encryption configuration. If no value is specified, the default
1376
- # is no encryption.
1377
- # @return [Types::EncryptionConfiguration]
1378
- #
1379
- # @!attribute [rw] cloud_watch_logging_options
1380
- # Describes CloudWatch logging options for your delivery stream.
1381
- # @return [Types::CloudWatchLoggingOptions]
1382
- class S3DestinationUpdate < Struct.new(
1383
- :role_arn,
1384
- :bucket_arn,
1385
- :prefix,
1386
- :buffering_hints,
1387
- :compression_format,
1388
- :encryption_configuration,
1389
- :cloud_watch_logging_options)
1390
- include Aws::Structure
1391
- end
1918
+ # Describes the configuration of a destination in Amazon S3.
1919
+ #
1920
+ # @note When making an API call, you may pass S3DestinationConfiguration
1921
+ # data as a hash:
1922
+ #
1923
+ # {
1924
+ # role_arn: "RoleARN", # required
1925
+ # bucket_arn: "BucketARN", # required
1926
+ # prefix: "Prefix",
1927
+ # buffering_hints: {
1928
+ # size_in_m_bs: 1,
1929
+ # interval_in_seconds: 1,
1930
+ # },
1931
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1932
+ # encryption_configuration: {
1933
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
1934
+ # kms_encryption_config: {
1935
+ # awskms_key_arn: "AWSKMSKeyARN", # required
1936
+ # },
1937
+ # },
1938
+ # cloud_watch_logging_options: {
1939
+ # enabled: false,
1940
+ # log_group_name: "LogGroupName",
1941
+ # log_stream_name: "LogStreamName",
1942
+ # },
1943
+ # }
1944
+ #
1945
+ # @!attribute [rw] role_arn
1946
+ # The ARN of the AWS credentials.
1947
+ # @return [String]
1948
+ #
1949
+ # @!attribute [rw] bucket_arn
1950
+ # The ARN of the S3 bucket.
1951
+ # @return [String]
1952
+ #
1953
+ # @!attribute [rw] prefix
1954
+ # The "YYYY/MM/DD/HH" time format prefix is automatically used for
1955
+ # delivered S3 files. You can specify an extra prefix to be added in
1956
+ # front of the time format prefix. Note that if the prefix ends with a
1957
+ # slash, it appears as a folder in the S3 bucket. For more
1958
+ # information, see [Amazon S3 Object Name Format][1] in the *Amazon
1959
+ # Kinesis Firehose Developer Guide*.
1960
+ #
1961
+ #
1962
+ #
1963
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
1964
+ # @return [String]
1965
+ #
1966
+ # @!attribute [rw] buffering_hints
1967
+ # The buffering option. If no value is specified, **BufferingHints**
1968
+ # object default values are used.
1969
+ # @return [Types::BufferingHints]
1970
+ #
1971
+ # @!attribute [rw] compression_format
1972
+ # The compression format. If no value is specified, the default is
1973
+ # `UNCOMPRESSED`.
1974
+ #
1975
+ # The compression formats `SNAPPY` or `ZIP` cannot be specified for
1976
+ # Amazon Redshift destinations because they are not supported by the
1977
+ # Amazon Redshift `COPY` operation that reads from the S3 bucket.
1978
+ # @return [String]
1979
+ #
1980
+ # @!attribute [rw] encryption_configuration
1981
+ # The encryption configuration. If no value is specified, the default
1982
+ # is no encryption.
1983
+ # @return [Types::EncryptionConfiguration]
1984
+ #
1985
+ # @!attribute [rw] cloud_watch_logging_options
1986
+ # The CloudWatch logging options for your delivery stream.
1987
+ # @return [Types::CloudWatchLoggingOptions]
1988
+ #
1989
+ class S3DestinationConfiguration < Struct.new(
1990
+ :role_arn,
1991
+ :bucket_arn,
1992
+ :prefix,
1993
+ :buffering_hints,
1994
+ :compression_format,
1995
+ :encryption_configuration,
1996
+ :cloud_watch_logging_options)
1997
+ include Aws::Structure
1998
+ end
1392
1999
 
1393
- # Contains the parameters for UpdateDestination.
1394
- # @note When making an API call, pass UpdateDestinationInput
1395
- # data as a hash:
1396
- #
1397
- # {
1398
- # delivery_stream_name: "DeliveryStreamName", # required
1399
- # current_delivery_stream_version_id: "DeliveryStreamVersionId", # required
1400
- # destination_id: "DestinationId", # required
1401
- # s3_destination_update: {
1402
- # role_arn: "RoleARN",
1403
- # bucket_arn: "BucketARN",
1404
- # prefix: "Prefix",
1405
- # buffering_hints: {
1406
- # size_in_m_bs: 1,
1407
- # interval_in_seconds: 1,
1408
- # },
1409
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1410
- # encryption_configuration: {
1411
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
1412
- # kms_encryption_config: {
1413
- # awskms_key_arn: "AWSKMSKeyARN", # required
1414
- # },
1415
- # },
1416
- # cloud_watch_logging_options: {
1417
- # enabled: false,
1418
- # log_group_name: "LogGroupName",
1419
- # log_stream_name: "LogStreamName",
1420
- # },
1421
- # },
1422
- # redshift_destination_update: {
1423
- # role_arn: "RoleARN",
1424
- # cluster_jdbcurl: "ClusterJDBCURL",
1425
- # copy_command: {
1426
- # data_table_name: "DataTableName", # required
1427
- # data_table_columns: "DataTableColumns",
1428
- # copy_options: "CopyOptions",
1429
- # },
1430
- # username: "Username",
1431
- # password: "Password",
1432
- # retry_options: {
1433
- # duration_in_seconds: 1,
1434
- # },
1435
- # s3_update: {
1436
- # role_arn: "RoleARN",
1437
- # bucket_arn: "BucketARN",
1438
- # prefix: "Prefix",
1439
- # buffering_hints: {
1440
- # size_in_m_bs: 1,
1441
- # interval_in_seconds: 1,
1442
- # },
1443
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1444
- # encryption_configuration: {
1445
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
1446
- # kms_encryption_config: {
1447
- # awskms_key_arn: "AWSKMSKeyARN", # required
1448
- # },
1449
- # },
1450
- # cloud_watch_logging_options: {
1451
- # enabled: false,
1452
- # log_group_name: "LogGroupName",
1453
- # log_stream_name: "LogStreamName",
1454
- # },
1455
- # },
1456
- # cloud_watch_logging_options: {
1457
- # enabled: false,
1458
- # log_group_name: "LogGroupName",
1459
- # log_stream_name: "LogStreamName",
1460
- # },
1461
- # },
1462
- # elasticsearch_destination_update: {
1463
- # role_arn: "RoleARN",
1464
- # domain_arn: "ElasticsearchDomainARN",
1465
- # index_name: "ElasticsearchIndexName",
1466
- # type_name: "ElasticsearchTypeName",
1467
- # index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
1468
- # buffering_hints: {
1469
- # interval_in_seconds: 1,
1470
- # size_in_m_bs: 1,
1471
- # },
1472
- # retry_options: {
1473
- # duration_in_seconds: 1,
1474
- # },
1475
- # s3_update: {
1476
- # role_arn: "RoleARN",
1477
- # bucket_arn: "BucketARN",
1478
- # prefix: "Prefix",
1479
- # buffering_hints: {
1480
- # size_in_m_bs: 1,
1481
- # interval_in_seconds: 1,
1482
- # },
1483
- # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
1484
- # encryption_configuration: {
1485
- # no_encryption_config: "NoEncryption", # accepts NoEncryption
1486
- # kms_encryption_config: {
1487
- # awskms_key_arn: "AWSKMSKeyARN", # required
1488
- # },
1489
- # },
1490
- # cloud_watch_logging_options: {
1491
- # enabled: false,
1492
- # log_group_name: "LogGroupName",
1493
- # log_stream_name: "LogStreamName",
1494
- # },
1495
- # },
1496
- # cloud_watch_logging_options: {
1497
- # enabled: false,
1498
- # log_group_name: "LogGroupName",
1499
- # log_stream_name: "LogStreamName",
1500
- # },
1501
- # },
1502
- # }
1503
- # @!attribute [rw] delivery_stream_name
1504
- # The name of the delivery stream.
1505
- # @return [String]
1506
- #
1507
- # @!attribute [rw] current_delivery_stream_version_id
1508
- # Obtain this value from the **VersionId** result of the
1509
- # DeliveryStreamDescription operation. This value is required, and
1510
- # helps the service to perform conditional operations. For example, if
1511
- # there is a interleaving update and this value is null, then the
1512
- # update destination fails. After the update is successful, the
1513
- # **VersionId** value is updated. The service then performs a merge of
1514
- # the old configuration with the new configuration.
1515
- # @return [String]
1516
- #
1517
- # @!attribute [rw] destination_id
1518
- # The ID of the destination.
1519
- # @return [String]
1520
- #
1521
- # @!attribute [rw] s3_destination_update
1522
- # Describes an update for a destination in Amazon S3.
1523
- # @return [Types::S3DestinationUpdate]
1524
- #
1525
- # @!attribute [rw] redshift_destination_update
1526
- # Describes an update for a destination in Amazon Redshift.
1527
- # @return [Types::RedshiftDestinationUpdate]
1528
- #
1529
- # @!attribute [rw] elasticsearch_destination_update
1530
- # Describes an update for a destination in Amazon ES.
1531
- # @return [Types::ElasticsearchDestinationUpdate]
1532
- class UpdateDestinationInput < Struct.new(
1533
- :delivery_stream_name,
1534
- :current_delivery_stream_version_id,
1535
- :destination_id,
1536
- :s3_destination_update,
1537
- :redshift_destination_update,
1538
- :elasticsearch_destination_update)
1539
- include Aws::Structure
1540
- end
2000
+ # Describes a destination in Amazon S3.
2001
+ #
2002
+ # @!attribute [rw] role_arn
2003
+ # The ARN of the AWS credentials.
2004
+ # @return [String]
2005
+ #
2006
+ # @!attribute [rw] bucket_arn
2007
+ # The ARN of the S3 bucket.
2008
+ # @return [String]
2009
+ #
2010
+ # @!attribute [rw] prefix
2011
+ # The "YYYY/MM/DD/HH" time format prefix is automatically used for
2012
+ # delivered S3 files. You can specify an extra prefix to be added in
2013
+ # front of the time format prefix. Note that if the prefix ends with a
2014
+ # slash, it appears as a folder in the S3 bucket. For more
2015
+ # information, see [Amazon S3 Object Name Format][1] in the *Amazon
2016
+ # Kinesis Firehose Developer Guide*.
2017
+ #
2018
+ #
2019
+ #
2020
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
2021
+ # @return [String]
2022
+ #
2023
+ # @!attribute [rw] buffering_hints
2024
+ # The buffering option. If no value is specified, **BufferingHints**
2025
+ # object default values are used.
2026
+ # @return [Types::BufferingHints]
2027
+ #
2028
+ # @!attribute [rw] compression_format
2029
+ # The compression format. If no value is specified, the default is
2030
+ # `UNCOMPRESSED`.
2031
+ # @return [String]
2032
+ #
2033
+ # @!attribute [rw] encryption_configuration
2034
+ # The encryption configuration. If no value is specified, the default
2035
+ # is no encryption.
2036
+ # @return [Types::EncryptionConfiguration]
2037
+ #
2038
+ # @!attribute [rw] cloud_watch_logging_options
2039
+ # The CloudWatch logging options for your delivery stream.
2040
+ # @return [Types::CloudWatchLoggingOptions]
2041
+ #
2042
+ class S3DestinationDescription < Struct.new(
2043
+ :role_arn,
2044
+ :bucket_arn,
2045
+ :prefix,
2046
+ :buffering_hints,
2047
+ :compression_format,
2048
+ :encryption_configuration,
2049
+ :cloud_watch_logging_options)
2050
+ include Aws::Structure
2051
+ end
1541
2052
 
1542
- # Contains the output of UpdateDestination.
1543
- class UpdateDestinationOutput < Aws::EmptyStructure; end
2053
+ # Describes an update for a destination in Amazon S3.
2054
+ #
2055
+ # @note When making an API call, you may pass S3DestinationUpdate
2056
+ # data as a hash:
2057
+ #
2058
+ # {
2059
+ # role_arn: "RoleARN",
2060
+ # bucket_arn: "BucketARN",
2061
+ # prefix: "Prefix",
2062
+ # buffering_hints: {
2063
+ # size_in_m_bs: 1,
2064
+ # interval_in_seconds: 1,
2065
+ # },
2066
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
2067
+ # encryption_configuration: {
2068
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2069
+ # kms_encryption_config: {
2070
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2071
+ # },
2072
+ # },
2073
+ # cloud_watch_logging_options: {
2074
+ # enabled: false,
2075
+ # log_group_name: "LogGroupName",
2076
+ # log_stream_name: "LogStreamName",
2077
+ # },
2078
+ # }
2079
+ #
2080
+ # @!attribute [rw] role_arn
2081
+ # The ARN of the AWS credentials.
2082
+ # @return [String]
2083
+ #
2084
+ # @!attribute [rw] bucket_arn
2085
+ # The ARN of the S3 bucket.
2086
+ # @return [String]
2087
+ #
2088
+ # @!attribute [rw] prefix
2089
+ # The "YYYY/MM/DD/HH" time format prefix is automatically used for
2090
+ # delivered S3 files. You can specify an extra prefix to be added in
2091
+ # front of the time format prefix. Note that if the prefix ends with a
2092
+ # slash, it appears as a folder in the S3 bucket. For more
2093
+ # information, see [Amazon S3 Object Name Format][1] in the *Amazon
2094
+ # Kinesis Firehose Developer Guide*.
2095
+ #
2096
+ #
2097
+ #
2098
+ # [1]: http://docs.aws.amazon.com/firehose/latest/dev/basic-deliver.html
2099
+ # @return [String]
2100
+ #
2101
+ # @!attribute [rw] buffering_hints
2102
+ # The buffering option. If no value is specified, **BufferingHints**
2103
+ # object default values are used.
2104
+ # @return [Types::BufferingHints]
2105
+ #
2106
+ # @!attribute [rw] compression_format
2107
+ # The compression format. If no value is specified, the default is
2108
+ # `UNCOMPRESSED`.
2109
+ #
2110
+ # The compression formats `SNAPPY` or `ZIP` cannot be specified for
2111
+ # Amazon Redshift destinations because they are not supported by the
2112
+ # Amazon Redshift `COPY` operation that reads from the S3 bucket.
2113
+ # @return [String]
2114
+ #
2115
+ # @!attribute [rw] encryption_configuration
2116
+ # The encryption configuration. If no value is specified, the default
2117
+ # is no encryption.
2118
+ # @return [Types::EncryptionConfiguration]
2119
+ #
2120
+ # @!attribute [rw] cloud_watch_logging_options
2121
+ # The CloudWatch logging options for your delivery stream.
2122
+ # @return [Types::CloudWatchLoggingOptions]
2123
+ #
2124
+ class S3DestinationUpdate < Struct.new(
2125
+ :role_arn,
2126
+ :bucket_arn,
2127
+ :prefix,
2128
+ :buffering_hints,
2129
+ :compression_format,
2130
+ :encryption_configuration,
2131
+ :cloud_watch_logging_options)
2132
+ include Aws::Structure
2133
+ end
1544
2134
 
2135
+ # @note When making an API call, you may pass UpdateDestinationInput
2136
+ # data as a hash:
2137
+ #
2138
+ # {
2139
+ # delivery_stream_name: "DeliveryStreamName", # required
2140
+ # current_delivery_stream_version_id: "DeliveryStreamVersionId", # required
2141
+ # destination_id: "DestinationId", # required
2142
+ # s3_destination_update: {
2143
+ # role_arn: "RoleARN",
2144
+ # bucket_arn: "BucketARN",
2145
+ # prefix: "Prefix",
2146
+ # buffering_hints: {
2147
+ # size_in_m_bs: 1,
2148
+ # interval_in_seconds: 1,
2149
+ # },
2150
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
2151
+ # encryption_configuration: {
2152
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2153
+ # kms_encryption_config: {
2154
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2155
+ # },
2156
+ # },
2157
+ # cloud_watch_logging_options: {
2158
+ # enabled: false,
2159
+ # log_group_name: "LogGroupName",
2160
+ # log_stream_name: "LogStreamName",
2161
+ # },
2162
+ # },
2163
+ # extended_s3_destination_update: {
2164
+ # role_arn: "RoleARN",
2165
+ # bucket_arn: "BucketARN",
2166
+ # prefix: "Prefix",
2167
+ # buffering_hints: {
2168
+ # size_in_m_bs: 1,
2169
+ # interval_in_seconds: 1,
2170
+ # },
2171
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
2172
+ # encryption_configuration: {
2173
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2174
+ # kms_encryption_config: {
2175
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2176
+ # },
2177
+ # },
2178
+ # cloud_watch_logging_options: {
2179
+ # enabled: false,
2180
+ # log_group_name: "LogGroupName",
2181
+ # log_stream_name: "LogStreamName",
2182
+ # },
2183
+ # processing_configuration: {
2184
+ # enabled: false,
2185
+ # processors: [
2186
+ # {
2187
+ # type: "Lambda", # required, accepts Lambda
2188
+ # parameters: [
2189
+ # {
2190
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
2191
+ # parameter_value: "ProcessorParameterValue", # required
2192
+ # },
2193
+ # ],
2194
+ # },
2195
+ # ],
2196
+ # },
2197
+ # s3_backup_mode: "Disabled", # accepts Disabled, Enabled
2198
+ # s3_backup_update: {
2199
+ # role_arn: "RoleARN",
2200
+ # bucket_arn: "BucketARN",
2201
+ # prefix: "Prefix",
2202
+ # buffering_hints: {
2203
+ # size_in_m_bs: 1,
2204
+ # interval_in_seconds: 1,
2205
+ # },
2206
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
2207
+ # encryption_configuration: {
2208
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2209
+ # kms_encryption_config: {
2210
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2211
+ # },
2212
+ # },
2213
+ # cloud_watch_logging_options: {
2214
+ # enabled: false,
2215
+ # log_group_name: "LogGroupName",
2216
+ # log_stream_name: "LogStreamName",
2217
+ # },
2218
+ # },
2219
+ # },
2220
+ # redshift_destination_update: {
2221
+ # role_arn: "RoleARN",
2222
+ # cluster_jdbcurl: "ClusterJDBCURL",
2223
+ # copy_command: {
2224
+ # data_table_name: "DataTableName", # required
2225
+ # data_table_columns: "DataTableColumns",
2226
+ # copy_options: "CopyOptions",
2227
+ # },
2228
+ # username: "Username",
2229
+ # password: "Password",
2230
+ # retry_options: {
2231
+ # duration_in_seconds: 1,
2232
+ # },
2233
+ # s3_update: {
2234
+ # role_arn: "RoleARN",
2235
+ # bucket_arn: "BucketARN",
2236
+ # prefix: "Prefix",
2237
+ # buffering_hints: {
2238
+ # size_in_m_bs: 1,
2239
+ # interval_in_seconds: 1,
2240
+ # },
2241
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
2242
+ # encryption_configuration: {
2243
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2244
+ # kms_encryption_config: {
2245
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2246
+ # },
2247
+ # },
2248
+ # cloud_watch_logging_options: {
2249
+ # enabled: false,
2250
+ # log_group_name: "LogGroupName",
2251
+ # log_stream_name: "LogStreamName",
2252
+ # },
2253
+ # },
2254
+ # processing_configuration: {
2255
+ # enabled: false,
2256
+ # processors: [
2257
+ # {
2258
+ # type: "Lambda", # required, accepts Lambda
2259
+ # parameters: [
2260
+ # {
2261
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
2262
+ # parameter_value: "ProcessorParameterValue", # required
2263
+ # },
2264
+ # ],
2265
+ # },
2266
+ # ],
2267
+ # },
2268
+ # s3_backup_mode: "Disabled", # accepts Disabled, Enabled
2269
+ # s3_backup_update: {
2270
+ # role_arn: "RoleARN",
2271
+ # bucket_arn: "BucketARN",
2272
+ # prefix: "Prefix",
2273
+ # buffering_hints: {
2274
+ # size_in_m_bs: 1,
2275
+ # interval_in_seconds: 1,
2276
+ # },
2277
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
2278
+ # encryption_configuration: {
2279
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2280
+ # kms_encryption_config: {
2281
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2282
+ # },
2283
+ # },
2284
+ # cloud_watch_logging_options: {
2285
+ # enabled: false,
2286
+ # log_group_name: "LogGroupName",
2287
+ # log_stream_name: "LogStreamName",
2288
+ # },
2289
+ # },
2290
+ # cloud_watch_logging_options: {
2291
+ # enabled: false,
2292
+ # log_group_name: "LogGroupName",
2293
+ # log_stream_name: "LogStreamName",
2294
+ # },
2295
+ # },
2296
+ # elasticsearch_destination_update: {
2297
+ # role_arn: "RoleARN",
2298
+ # domain_arn: "ElasticsearchDomainARN",
2299
+ # index_name: "ElasticsearchIndexName",
2300
+ # type_name: "ElasticsearchTypeName",
2301
+ # index_rotation_period: "NoRotation", # accepts NoRotation, OneHour, OneDay, OneWeek, OneMonth
2302
+ # buffering_hints: {
2303
+ # interval_in_seconds: 1,
2304
+ # size_in_m_bs: 1,
2305
+ # },
2306
+ # retry_options: {
2307
+ # duration_in_seconds: 1,
2308
+ # },
2309
+ # s3_update: {
2310
+ # role_arn: "RoleARN",
2311
+ # bucket_arn: "BucketARN",
2312
+ # prefix: "Prefix",
2313
+ # buffering_hints: {
2314
+ # size_in_m_bs: 1,
2315
+ # interval_in_seconds: 1,
2316
+ # },
2317
+ # compression_format: "UNCOMPRESSED", # accepts UNCOMPRESSED, GZIP, ZIP, Snappy
2318
+ # encryption_configuration: {
2319
+ # no_encryption_config: "NoEncryption", # accepts NoEncryption
2320
+ # kms_encryption_config: {
2321
+ # awskms_key_arn: "AWSKMSKeyARN", # required
2322
+ # },
2323
+ # },
2324
+ # cloud_watch_logging_options: {
2325
+ # enabled: false,
2326
+ # log_group_name: "LogGroupName",
2327
+ # log_stream_name: "LogStreamName",
2328
+ # },
2329
+ # },
2330
+ # processing_configuration: {
2331
+ # enabled: false,
2332
+ # processors: [
2333
+ # {
2334
+ # type: "Lambda", # required, accepts Lambda
2335
+ # parameters: [
2336
+ # {
2337
+ # parameter_name: "LambdaArn", # required, accepts LambdaArn, NumberOfRetries
2338
+ # parameter_value: "ProcessorParameterValue", # required
2339
+ # },
2340
+ # ],
2341
+ # },
2342
+ # ],
2343
+ # },
2344
+ # cloud_watch_logging_options: {
2345
+ # enabled: false,
2346
+ # log_group_name: "LogGroupName",
2347
+ # log_stream_name: "LogStreamName",
2348
+ # },
2349
+ # },
2350
+ # }
2351
+ #
2352
+ # @!attribute [rw] delivery_stream_name
2353
+ # The name of the delivery stream.
2354
+ # @return [String]
2355
+ #
2356
+ # @!attribute [rw] current_delivery_stream_version_id
2357
+ # Obtain this value from the **VersionId** result of
2358
+ # DeliveryStreamDescription. This value is required, and helps the
2359
+ # service to perform conditional operations. For example, if there is
2360
+ # a interleaving update and this value is null, then the update
2361
+ # destination fails. After the update is successful, the **VersionId**
2362
+ # value is updated. The service then performs a merge of the old
2363
+ # configuration with the new configuration.
2364
+ # @return [String]
2365
+ #
2366
+ # @!attribute [rw] destination_id
2367
+ # The ID of the destination.
2368
+ # @return [String]
2369
+ #
2370
+ # @!attribute [rw] s3_destination_update
2371
+ # \[Deprecated\] Describes an update for a destination in Amazon S3.
2372
+ # @return [Types::S3DestinationUpdate]
2373
+ #
2374
+ # @!attribute [rw] extended_s3_destination_update
2375
+ # Describes an update for a destination in Amazon S3.
2376
+ # @return [Types::ExtendedS3DestinationUpdate]
2377
+ #
2378
+ # @!attribute [rw] redshift_destination_update
2379
+ # Describes an update for a destination in Amazon Redshift.
2380
+ # @return [Types::RedshiftDestinationUpdate]
2381
+ #
2382
+ # @!attribute [rw] elasticsearch_destination_update
2383
+ # Describes an update for a destination in Amazon ES.
2384
+ # @return [Types::ElasticsearchDestinationUpdate]
2385
+ #
2386
+ class UpdateDestinationInput < Struct.new(
2387
+ :delivery_stream_name,
2388
+ :current_delivery_stream_version_id,
2389
+ :destination_id,
2390
+ :s3_destination_update,
2391
+ :extended_s3_destination_update,
2392
+ :redshift_destination_update,
2393
+ :elasticsearch_destination_update)
2394
+ include Aws::Structure
1545
2395
  end
2396
+
2397
+ class UpdateDestinationOutput < Aws::EmptyStructure; end
2398
+
1546
2399
  end
1547
2400
  end