Skip to content

Commit f2f9a6b

Browse files
authored
Update index.md
1 parent 312df29 commit f2f9a6b

File tree

1 file changed

+21
-0
lines changed
  • src/connections/destinations/catalog/amazon-kinesis

1 file changed

+21
-0
lines changed

src/connections/destinations/catalog/amazon-kinesis/index.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,27 @@ Replace that snippet with the following, and replace the contents of the array w
178178
}
179179
```
180180

181+
### Migrating to PutRecords
182+
The Kinesis destination will default to use PutRecords. A previous version of the IAM policy document only granted `PutRecord` access, which can slow down Kinesis write times and degrade data deliverability. Substitute the updated policy document above to grant Kinesis `PutRecords` (plural) and allow batching, like this:
183+
```json
184+
{
185+
"Version": "2012-10-17",
186+
"Statement": [
187+
{
188+
"Effect": "Allow",
189+
"Action": [
190+
"kinesis:PutRecord",
191+
"kinesis:PutRecords"
192+
],
193+
"Resource": [
194+
"arn:aws:kinesis:{region}:{account-id}:stream/{stream-name}"
195+
]
196+
}
197+
]
198+
}
199+
```
200+
Once you update your IAM policy, Segment systems will automatically default to use PutRecords for more efficient data transmission. This is a zero-downtime change and will not have any impact on your data other than increasing the deliverability success rate.
201+
181202
### Use a single secret ID
182203
If you have so many sources using Kinesis that it is impractical to attach all of their IDs to your IAM role, you can instead opt to set a single ID to use instead. This approach should be avoided in favor of the above approach if possible since it will result in you having to keep track of a secret value. To set this value, go to the Kinesis destination settings from each of your Segment sources and set the 'Secret ID' to a value of your choosing. This value is a secret and should be treated as sensitively as a password. Once all of your sources have been updated to use this value, find the IAM role you created for this destination in the AWS Console in Services > IAM > Roles. Click on the role, and navigate to the **Trust Relationships** tab. Click **Edit trust relationship**. You should see a snippet that looks something that looks like this:
183204

0 commit comments

Comments
 (0)