github.com/Jeffail/benthos/v3@v3.65.0/website/docs/components/inputs/kinesis_balanced.md (about) 1 --- 2 title: kinesis_balanced 3 type: input 4 status: deprecated 5 categories: ["Services","AWS"] 6 --- 7 8 <!-- 9 THIS FILE IS AUTOGENERATED! 10 11 To make changes please edit the contents of: 12 lib/input/kinesis_balanced.go 13 --> 14 15 import Tabs from '@theme/Tabs'; 16 import TabItem from '@theme/TabItem'; 17 18 :::warning DEPRECATED 19 This component is deprecated and will be removed in the next major version release. Please consider moving onto [alternative components](#alternatives). 20 ::: 21 22 Receives messages from a Kinesis stream and automatically balances shards across 23 consumers. 24 25 26 <Tabs defaultValue="common" values={[ 27 { label: 'Common', value: 'common', }, 28 { label: 'Advanced', value: 'advanced', }, 29 ]}> 30 31 <TabItem value="common"> 32 33 ```yaml 34 # Common config fields, showing default values 35 input: 36 label: "" 37 kinesis_balanced: 38 stream: "" 39 dynamodb_table: "" 40 start_from_oldest: true 41 region: eu-west-1 42 batching: 43 count: 0 44 byte_size: 0 45 period: "" 46 check: "" 47 ``` 48 49 </TabItem> 50 <TabItem value="advanced"> 51 52 ```yaml 53 # All config fields, showing default values 54 input: 55 label: "" 56 kinesis_balanced: 57 stream: "" 58 dynamodb_table: "" 59 dynamodb_billing_mode: "" 60 dynamodb_read_provision: 0 61 dynamodb_write_provision: 0 62 start_from_oldest: true 63 region: eu-west-1 64 endpoint: "" 65 credentials: 66 profile: "" 67 id: "" 68 secret: "" 69 token: "" 70 role: "" 71 role_external_id: "" 72 batching: 73 count: 0 74 byte_size: 0 75 period: "" 76 check: "" 77 processors: [] 78 ``` 79 80 </TabItem> 81 </Tabs> 82 83 ## Alternatives 84 85 This input is being replaced with the shiny new [`aws_kinesis` input](/docs/components/inputs/aws_kinesis), which has improved features, consider trying it out instead. 86 87 ### Metadata 88 89 This input adds the following metadata fields to each message: 90 91 ```text 92 - kinesis_shard 93 - kinesis_partition_key 94 - kinesis_sequence_number 95 ``` 96 97 You can access these metadata fields using 98 [function interpolation](/docs/configuration/interpolation#metadata). 99 100 ## Fields 101 102 ### `stream` 103 104 The Kinesis stream to consume from. 105 106 107 Type: `string` 108 Default: `""` 109 110 ### `dynamodb_table` 111 112 A DynamoDB table to use for offset storage. 113 114 115 Type: `string` 116 Default: `""` 117 118 ### `dynamodb_billing_mode` 119 120 A billing mode to set for the offset DynamoDB table. 121 122 123 Type: `string` 124 Default: `""` 125 126 ### `dynamodb_read_provision` 127 128 The read capacity of the offset DynamoDB table. 129 130 131 Type: `int` 132 Default: `0` 133 134 ### `dynamodb_write_provision` 135 136 The write capacity of the offset DynamoDB table. 137 138 139 Type: `int` 140 Default: `0` 141 142 ### `start_from_oldest` 143 144 Whether to consume from the oldest message when an offset does not yet exist for the stream. 145 146 147 Type: `bool` 148 Default: `true` 149 150 ### `region` 151 152 The AWS region to target. 153 154 155 Type: `string` 156 Default: `"eu-west-1"` 157 158 ### `endpoint` 159 160 Allows you to specify a custom endpoint for the AWS API. 161 162 163 Type: `string` 164 Default: `""` 165 166 ### `credentials` 167 168 Optional manual configuration of AWS credentials to use. More information can be found [in this document](/docs/guides/cloud/aws). 169 170 171 Type: `object` 172 173 ### `credentials.profile` 174 175 A profile from `~/.aws/credentials` to use. 176 177 178 Type: `string` 179 Default: `""` 180 181 ### `credentials.id` 182 183 The ID of credentials to use. 184 185 186 Type: `string` 187 Default: `""` 188 189 ### `credentials.secret` 190 191 The secret for the credentials being used. 192 193 194 Type: `string` 195 Default: `""` 196 197 ### `credentials.token` 198 199 The token for the credentials being used, required when using short term credentials. 200 201 202 Type: `string` 203 Default: `""` 204 205 ### `credentials.role` 206 207 A role ARN to assume. 208 209 210 Type: `string` 211 Default: `""` 212 213 ### `credentials.role_external_id` 214 215 An external ID to provide when assuming a role. 216 217 218 Type: `string` 219 Default: `""` 220 221 ### `batching` 222 223 Allows you to configure a [batching policy](/docs/configuration/batching). 224 225 226 Type: `object` 227 228 ```yaml 229 # Examples 230 231 batching: 232 byte_size: 5000 233 count: 0 234 period: 1s 235 236 batching: 237 count: 10 238 period: 1s 239 240 batching: 241 check: this.contains("END BATCH") 242 count: 0 243 period: 1m 244 ``` 245 246 ### `batching.count` 247 248 A number of messages at which the batch should be flushed. If `0` disables count based batching. 249 250 251 Type: `int` 252 Default: `0` 253 254 ### `batching.byte_size` 255 256 An amount of bytes at which the batch should be flushed. If `0` disables size based batching. 257 258 259 Type: `int` 260 Default: `0` 261 262 ### `batching.period` 263 264 A period in which an incomplete batch should be flushed regardless of its size. 265 266 267 Type: `string` 268 Default: `""` 269 270 ```yaml 271 # Examples 272 273 period: 1s 274 275 period: 1m 276 277 period: 500ms 278 ``` 279 280 ### `batching.check` 281 282 A [Bloblang query](/docs/guides/bloblang/about/) that should return a boolean value indicating whether a message should end a batch. 283 284 285 Type: `string` 286 Default: `""` 287 288 ```yaml 289 # Examples 290 291 check: this.type == "end_of_transaction" 292 ``` 293 294 ### `batching.processors` 295 296 A list of [processors](/docs/components/processors/about) to apply to a batch as it is flushed. This allows you to aggregate and archive the batch however you see fit. Please note that all resulting messages are flushed as a single batch, therefore splitting the batch into smaller batches using these processors is a no-op. 297 298 299 Type: `array` 300 Default: `[]` 301 302 ```yaml 303 # Examples 304 305 processors: 306 - archive: 307 format: lines 308 309 processors: 310 - archive: 311 format: json_array 312 313 processors: 314 - merge_json: {} 315 ``` 316 317