aws/amazon-kinesis-video-streams-parser-library

ClientLimitExceededException: Error while getting video from KVS

divyaJainPhilips opened this issue · 2 comments

Hi,
Getting below error when trying to read the stream from KVS using GET API on EC2 instance.
Same stream able to read when run from local machine.

Exception in thread "main" com.amazonaws.services.kinesisvideo.model.ClientLimitExceededException: Limit exceeded on number of requests for GetDataEndpoint API for resource '' (Service: AmazonKinesisVideo; Status Code: 400; Error Code: ClientLimitExceededException; Request ID: 340bac8e-5196-49bb-b91e-ae5ba4044ddb)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.handleErrorResponse(AmazonHttpClient.java:1701)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeOneRequest(AmazonHttpClient.java:1356)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeHelper(AmazonHttpClient.java:1102)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:759)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:733)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:715)
at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:675)
at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:657)
at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:521)
at com.amazonaws.services.kinesisvideo.AmazonKinesisVideoClient.doInvoke(AmazonKinesisVideoClient.java:960)
at com.amazonaws.services.kinesisvideo.AmazonKinesisVideoClient.invoke(AmazonKinesisVideoClient.java:927)
at com.amazonaws.services.kinesisvideo.AmazonKinesisVideoClient.invoke(AmazonKinesisVideoClient.java:916)
at com.amazonaws.services.kinesisvideo.AmazonKinesisVideoClient.executeGetDataEndpoint(AmazonKinesisVideoClient.java:436)
at com.amazonaws.services.kinesisvideo.AmazonKinesisVideoClient.getDataEndpoint(AmazonKinesisVideoClient.java:408)
at com.philips.rocc.kinesis.consumer.utility.Utility.createAmazonKinesisVideoMedia(Utility.java:54)
at com.philips.rocc.kinesis.consumer.GetMediaWorker.(GetMediaWorker.java:47)
at com.philips.rocc.kinesis.consumer.App.main(App.java:20)

Any suggestion?

From what I can tell from your logs, any of the following points might have caused it:

  • You were calling GetMedia more than 5 TPS
  • There were already 3 concurrent active connections
  • You were hitting the bandwidth limit, 25 MB/s

For more details, please refer to https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/limits.html.