jmurphyweb
Hi all,
I have an intermittent bug in production which I am trying to track down which causes requests to take a really long time:
Heroku times out all requests after 30 seconds, meaning the response never get’s sent for these slow requests and I never get alerted of the error.
Ideally I would force my own 30 second timeout to kill the request early. I’ve looked into cowboy’s idle_timeout option but it seems to have strange behaviour, not returning an error message to the user but rather a chrome error page and the client automatically attempts a refresh.
I am thinking of setting up a genserver that does a Process.send_after(__MODULE__, {:kill_if_open, request_pid}, 30_000)
and run Process.exit(pid, :kill) in the :kill_if_open handler.
Does anyone have any feedback on this approach? If it is bad practice, I could simply log/report that request and then investigate later.
Trending in Questions
Other Trending Topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #blog-post
- #elixirconf-us
- #elixir-ls
- #ai
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #hex
- #security
- #metaprogramming










Showing Posts 1 to 1- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
jmurphyweb
I’ve now implemented it:
But there is no response sent to the user, the browser just hangs.
If anyone has any feedback or suggestions I’d be grateful to hear.
Thanks