dblock / slack-strava

(Re)Post Strava activities to Slack
https://slava.playplay.io
MIT License
37 stars 6 forks source link

Rate limit exceeded causes users to see an http_client_error #77

Closed dblock closed 4 years ago

dblock commented 4 years ago
I, [2020-03-27T21:29:09.499159 #258]  INFO -- : CLUBS: ..., user_id=xyz, user_name=, name=, id=.
E, [2020-03-27T21:29:09.630055 #258] ERROR -- : Strava::Errors::Fault: Rate Limit Exceeded
  /app/vendor/bundle/ruby/2.6.0/gems/strava-ruby-client-0.3.1/lib/strava/web/raise_error.rb:15:in `on_complete'
  /app/vendor/bundle/ruby/2.6.0/gems/faraday-0.17.3/lib/faraday/response.rb:9:in `block in call'
  /app/vendor/bundle/ruby/2.6.0/gems/faraday-0.17.3/lib/faraday/response.rb:61:in `on_complete'
  /app/vendor/bundle/ruby/2.6.0/gems/faraday-0.17.3/lib/faraday/response.rb:8:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/faraday-0.17.3/lib/faraday/request/url_encoded.rb:15:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/faraday-0.17.3/lib/faraday/request/multipart.rb:15:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/faraday-0.17.3/lib/faraday/rack_builder.rb:143:in `build_response'
  /app/vendor/bundle/ruby/2.6.0/gems/faraday-0.17.3/lib/faraday/connection.rb:387:in `run_request'
  /app/vendor/bundle/ruby/2.6.0/gems/faraday-0.17.3/lib/faraday/connection.rb:138:in `get'
  /app/vendor/bundle/ruby/2.6.0/gems/strava-ruby-client-0.3.1/lib/strava/web/request.rb:26:in `request'
  /app/vendor/bundle/ruby/2.6.0/gems/strava-ruby-client-0.3.1/lib/strava/web/request.rb:5:in `get'
  /app/vendor/bundle/ruby/2.6.0/gems/strava-ruby-client-0.3.1/lib/strava/api/cursor.rb:20:in `block in each'
  /app/vendor/bundle/ruby/2.6.0/gems/strava-ruby-client-0.3.1/lib/strava/api/cursor.rb:18:in `loop'
  /app/vendor/bundle/ruby/2.6.0/gems/strava-ruby-client-0.3.1/lib/strava/api/cursor.rb:18:in `each'
  /app/vendor/bundle/ruby/2.6.0/gems/strava-ruby-client-0.3.1/lib/strava/api/client.rb:43:in `paginate'
  /app/vendor/bundle/ruby/2.6.0/gems/strava-ruby-client-0.3.1/lib/strava/api/endpoints/clubs.rb:70:in `athlete_clubs'
  /app/slack-strava/models/user.rb:224:in `athlete_clubs_to_slack'
  /app/slack-strava/api/endpoints/requests/command.rb:68:in `clubs!'
  /app/slack-strava/api/endpoints/slack_endpoint.rb:25:in `block (2 levels) in <class:SlackEndpoint>'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:59:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:59:in `block (2 levels) in generate_api_method'
  /app/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.2.2/lib/active_support/notifications.rb:182:in `instrument'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:58:in `block in generate_api_method'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:339:in `execute'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:265:in `block in run'
  /app/vendor/bundle/ruby/2.6.0/gems/activesupport-6.0.2.2/lib/active_support/notifications.rb:182:in `instrument'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:245:in `run'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:320:in `block in build_stack'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/middleware/base.rb:35:in `call!'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/middleware/base.rb:28:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/middleware/error.rb:39:in `block in call!'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/middleware/error.rb:38:in `catch'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/middleware/error.rb:38:in `call!'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/middleware/base.rb:28:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/rack-2.2.2/lib/rack/head.rb:12:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:229:in `call!'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/endpoint.rb:223:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/router/route.rb:77:in `exec'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/router.rb:135:in `process_route'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/router.rb:88:in `block in identity'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/router.rb:107:in `transaction'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/router.rb:86:in `identity'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/router.rb:71:in `block in call'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/router.rb:151:in `with_optimization'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/router.rb:70:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/api/instance.rb:167:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/grape.rb:125:in `call_with_new_relic'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/api/instance.rb:71:in `call!'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/api/instance.rb:66:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/grape-1.3.1/lib/grape/api.rb:68:in `call'
  /app/slack-strava/api/middleware.rb:33:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/rack-server-pages-0.1.0/lib/rack/server_pages.rb:46:in `serving'
  /app/vendor/bundle/ruby/2.6.0/gems/rack-server-pages-0.1.0/lib/rack/server_pages.rb:36:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/rack-robotz-0.0.4/lib/rack/robotz/middleware.rb:20:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/rack-rewrite-1.5.1/lib/rack/rewrite.rb:24:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/rack-cors-1.1.1/lib/rack/cors.rb:100:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/newrelic_rpm-6.9.0.363/lib/new_relic/agent/instrumentation/middleware_tracing.rb:99:in `call'
  /app/vendor/bundle/ruby/2.6.0/gems/unicorn-5.5.4/lib/unicorn/http_server.rb:605:in `process_client'
  /app/vendor/bundle/ruby/2.6.0/gems/unicorn-5.5.4/lib/unicorn/http_server.rb:700:in `worker_loop'
  /app/vendor/bundle/ruby/2.6.0/gems/unicorn-5.5.4/lib/unicorn/http_server.rb:548:in `spawn_missing_workers'
  /app/vendor/bundle/ruby/2.6.0/gems/unicorn-5.5.4/lib/unicorn/http_server.rb:144:in `start'
  /app/vendor/bundle/ruby/2.6.0/gems/unicorn-5.5.4/bin/unicorn:128:in `<top (required)>'
  /app/vendor/bundle/ruby/2.6.0/bin/unicorn:23:in `load'
  /app/vendor/bundle/ruby/2.6.0/bin/unicorn:23:in `<top (required)>'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/cli/exec.rb:74:in `load'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/cli/exec.rb:74:in `kernel_load'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/cli/exec.rb:28:in `run'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/cli.rb:463:in `exec'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/cli.rb:27:in `dispatch'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/vendor/thor/lib/thor/base.rb:466:in `start'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/cli.rb:18:in `start'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/exe/bundle:30:in `block in <top (required)>'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/lib/bundler/friendly_errors.rb:124:in `with_friendly_errors'
  /app/vendor/bundle/ruby/2.6.0/gems/bundler-1.17.3/exe/bundle:22:in `<top (required)>'
  /app/vendor/bundle/bin/bundle:104:in `load'
  /app/vendor/bundle/bin/bundle:104:in `<main>'
dblock commented 4 years ago

Needs #55

dblock commented 4 years ago

This should be resolved now that https://github.com/dblock/slack-strava/issues/55 is done.