-
Notifications
You must be signed in to change notification settings - Fork 427
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Unexpected message" error log and then requests stopped #677
Comments
Just had another thought. Since we log via HTTP and so lost those logs, it makes it difficult to know what was going on exactly. For example, we don't know if GET requests were succeeding or not. However, the application POSTs to three different destinations, using two pools, and we know that after this error message, none of the destinations received anymore POST messages. Edit: Actually, I just thought of a server that we control with sufficiently granular logs and was able to confirm that the GET requests to that server also stopped. |
Yes, it's a message not vatched by hackney (though it should be in last version. There is a new connection handling that will be part of the next update fixing it completely. the work is in progress :) |
@losvedir can you share a snippet of your code doing the request and where you get that error? |
That error message specifically came from one of the three places in hackney's own hackney_stream.erl. I grepped my codebase and all its deps and that's the only place "Unexpected message" occurs. We don't actually use I also wonder, given the error of # Saw this message some in from dev server. Handle it more gracefully.
def handle_info({:ssl_closed, socket}, state) do
Logger.info("SSL Connection closed. Ignoring. Socket #{inspect(socket)}")
{:noreply, state}
end |
Last night, one of our applications stopped making all HTTP requests. I looked at the logs locally, and this was the last message:
I grepped our codebase and all its dependencies, and that log message is only generated by hackney, in hackney_stream.erl.
One caveat is that I don't know for sure if the app stopped running altogether, or just stopped making HTTP requests. We log our
info
level messages to Splunk (via HTTP and hackney), and so those logs stopped coming in. Locally, we only logwarn
and above, and those are infrequent enough that the above log message was the last one that appeared. However, I believe the app was continuing to work, and just failing to send requests, because if it had outright crashed it would have been detected and the application would have been automatically restarted.After a manual restart of the application everything worked normally again.
Could it be that hackney wedged itself upon receiving that message, and stopped sending requests? Or did hackney behave fine, and the calling code didn't handle a return value it should have?
Versions
The text was updated successfully, but these errors were encountered: