edgurgel / poxa

Pusher server implementation compatible with Pusher client libraries.
https://poxa.onrender.com/
MIT License
1.05k stars 96 forks source link

Ping endpoint responds with an error #153

Closed musabhusaini closed 4 years ago

musabhusaini commented 5 years ago

I am running poxa inside a Docker container (v1.1.0) and I need to use the /ping endpoint to test service readiness and heartbeat. However, the endpoint always results in a server error.

Here is a minimal scenario:

docker network create poxa
docker run --name poxa --network poxa -e PORT=1234 -d edgurgel/poxa-automated:v1.1.0
docker run --rm -t --network poxa curlimages/curl:latest curl -I poxa:1234/ping

Expected: Something indicating success

Actual:

HTTP/1.1 500 Internal Server Error
content-length: 0

Also, this appears in poxa logs:

[error] Ranch listener :poxa_http, connection process #PID<0.1822.0>, stream 1 had its request process #PID<0.1823.0> exit with reason :undef and stacktrace [{Poxa.PingHandler, :init, [%{bindings: %{}, body_length: 0, cert: :undefined, has_body: false, headers: %{"accept" => "*/*", "host" => "poxa:1234", "user-agent" => "curl/7.67.0-DEV"}, host: "poxa", host_info: :undefined, method: "HEAD", path: "/ping", path_info: :undefined, peer: {{172, 20, 0, 3}, 42098}, pid: #PID<0.1822.0>, port: 1234, qs: "", ref: :poxa_http, scheme: "http", sock: {{172, 20, 0, 2}, 1234}, streamid: 1, version: :"HTTP/1.1"}, []], []}, {:cowboy_handler, :execute, 2, [file: '/app/deps/cowboy/src/cowboy_handler.erl', line: 41]}, {:cowboy_stream_h, :execute, 3, [file: '/app/deps/cowboy/src/cowboy_stream_h.erl', line: 296]}, {:cowboy_stream_h, :request_process, 3, [file: '/app/deps/cowboy/src/cowboy_stream_h.erl', line: 274]}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 249]}]