Getting Error too many requests from openvidu

Hi ,

In a meeting 16 people joined and we got the token error as too many requests.

and we are unable to get the audio stream properly…

Thanks,
Krishna Prasad BH.

What OpenVidu do you have deployed, OpenVidu CE or OpenVidu PRO and which version?

Can you share OpenVidu logs when this happens? SSH into your instance and execute:

sudo su
cd /opt/openvidu
./openvidu logs

Regards

Hi cruizba,

We are using Openvidu 2.16 pro version…

as we think that this is handling from our side only with the express rate limiter.

anyhow check once for reference.can you help how can i take the openvidu logs with particular time and date?

-1",“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“defaultEventExecutorGroup-7-1”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-1”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“Thread-11”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“defaultEventExecutorGroup-6-2”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 12”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“Thread-3”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 19”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 9”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-10”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“http-nio-0.0.0.0-5443-ClientPoller”,“state”:“RUNNABLE”,“priority”:5,“type”:“Daemon”},{“name”:“I/O dispatcher 18”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“Timer-0”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“pool-10-thread-2”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 21”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“pool-11-thread-4”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-3”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“I/O dispatcher 14”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-6”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“DestroyJavaVM”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“SessionHandler-q171cf0rievebejbmrktorls8d-e1537-t0”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“pool-11-thread-8”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 15”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“nioEventLoopGroup-5-1”,“state”:“RUNNABLE”,“priority”:10,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-Acceptor”,“state”:“RUNNABLE”,“priority”:5,“type”:“Daemon”},{“name”:“I/O dispatcher 24”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“Catalina-utility-1”,“state”:“TIMED_WAITING”,“priority”:1,“type”:“Normal”},{“name”:“Reference Handler”,“state”:“WAITING”,“priority”:10,“type”:“Daemon”},{“name”:“I/O dispatcher 1”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“Signal Dispatcher”,“state”:“RUNNABLE”,“priority”:9,“type”:“Daemon”},{“name”:“pool-11-thread-3”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 2”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“pool-10-thread-3”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 6”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“Keep-Alive-SocketCleaner”,“state”:“WAITING”,“priority”:8,“type”:“Daemon”},{“name”:“pool-11-thread-1”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“defaultEventExecutorGroup-7-2”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“nioEventLoopGroup-5-2”,“state”:“RUNNABLE”,“priority”:10,“type”:“Normal”},{“name”:“Timer-3”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 20”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“JsonRpcClient-hearbeatExec-e4-t0”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“container-0”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“Timer-1”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 3”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“pool-11-thread-7”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-9”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“I/O dispatcher 23”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“process reaper”,“state”:“TIMED_WAITING”,“priority”:10,“type”:“Daemon”},{“name”:“I/O dispatcher 5”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“jsonrpcTaskScheduler-1”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 13”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“JsonRpcClient-hearbeatExec-e1-t0”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 16”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“I/O dispatcher 17”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“nioEventLoopGroup-5-3”,“state”:“RUNNABLE”,“priority”:10,“type”:“Normal”},{“name”:“pool-10-thread-4”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-5”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“pool-13-thread-1”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-BlockPoller”,“state”:“RUNNABLE”,“priority”:5,“type”:“Daemon”},{“name”:“I/O dispatcher 10”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“pool-11-thread-2”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“SessionHandler-t4hbuubvbd4cvgf8ugsrp4rqvl-e2461-t0”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“nioEventLoopGroup-3-1”,“state”:“RUNNABLE”,“priority”:10,“type”:“Normal”},{“name”:“Catalina-utility-2”,“state”:“WAITING”,“priority”:1,“type”:“Normal”},{“name”:“pool-12-thread-1”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-2”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“pool-3-thread-1”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“Thread-8”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“SessionHandler-rkp1hdt0uqjv1mpr1pceh1gp5n-e1749-t0”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“Timer-2”,“state”:“TIMED_WAITING”,“priority”:5,“type”:“Normal”},{“name”:“pool-2-thread-1”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-8”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“I/O dispatcher 8”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“pool-11-thread-5”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“http-nio-0.0.0.0-5443-exec-7”,“state”:“WAITING”,“priority”:5,“type”:“Daemon”},{“name”:“I/O dispatcher 22”,“state”:“RUNNABLE”,“priority”:5,“type”:“Normal”},{“name”:“SessionHandler-m48h4sl7klfhbirnp9cue075ll-e621-t0”,“state”:“WAITING”,“priority”:5,“type”:“Normal”},{“name”:“nioEventLoopGroup-2-1”,“state”:“RUNNABLE”,“priority”:10,“type”:“Normal”},{“name”:"I/O

Regards,
Krishna Prasad Bh

  1. Go to kibana: https://<YOUR_DOMAIN_NAME>/kibana
  2. Enter your credentials (They should be configured in your .env file in /opt/openvidu as ELASTICSEARCH_USERNAME and ELASTICSEARCH_PASSWORD
  3. Go to Logs section:
  4. Click on settings and enter in “Log indices”: openvidu-logs*
  5. Go to the stream section again and enter a time range:
  6. Copy the log where you were affected with this.

Regardless of the issue, I think that this error may be caused because of an specific service or a client spamming to much parallel http request within a second (propably some kind of polling in your application) which is causing this error, so the server is acting with a 429 error to avoid the system to flood with unnecessary calls: https://stackoverflow.com/a/51423469/14743924
Another possibility is that your server is configured with an external proxy which is limiting parallel requests of same client/services.

Probably related could be the resources of your machine. Which specifications do you have in your OpenVidu Pro Node and Media Nodes?

Sorry, I’ve missed you said that.

Probably this rate limiter is causing the problem

HI,

Thanks for the reply

does openvidu handling any rate limit to token api?

Thanks,
Krishna Prasad

AFAIK we don’t use any kind of rate limit.