0

My Snowplow enricher loads data to a Kinesis Data Stream but Kinesis responds with error 400 and the message Member must have length less than or equal to 500 (Service: AmazonKinesis; Status Code: 400; Error Code: ValidationException and I cannot find this exception in the AmazonKinesis documentation. I also do not understand the message, 500 what, bytes? When I look at Kinesis within the AWS console, there is no setting set to 500 and also I do not see anything related to maximum sizes.

Can someone tell me what this 500 is about?

Thijs
  • 1,423
  • 15
  • 38

1 Answers1

1

The error means that the Enrich app is trying to write more than 500 records to Kinesis at once. The PutRequests action of the Kinesis API has a limit of 500 entries. This is documented here.

In your Enrich config file, you have buffer section, where you can specify:

      byteLimit = 10000000
      recordLimit = 480 
      timeLimit = 60000

A flush is triggered when one of those limits is hit, whichever occurs first.

Dilyan
  • 71
  • 2