-
Notifications
You must be signed in to change notification settings - Fork 284
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
no stack trace on uncaught exception in task #1420
Comments
It's very similar to the issue in #1421. In these cases, the message should definitively send the full traceback and not only the error message as it does right now. |
It doesn't make sense to present a stack track to the user by default. The application can be run with |
I think, ideally, stack traces should be on a separate log level, or perhaps just controlled with a version instead. With LogLevel.debug_ you get bombarded with vibe's internal logging, which as a library user is not very useful. Would maybe having a LogLevel.internal or what have you, where all vibe.d debug logging would go be more useful? This way users could use debug_ for application-level debugging and callstacks. |
Hi, Logging stack traces in production is invaluable when a user has never recovered from the exception. It is a big indication of a bug and helps greatly in investigating the issue. Setting the default logging to debug_ is simply not viable in that case as there is too much verbosity. as for @marcioapm's suggestion, I think this is a good idea. Having a lower tier of logging for vibe.d's internal would help when debugging issues. |
Just noticed that I didn't submit my earlier reply... So I think that many of the In addition to that, it maybe makes sense to provide a default error logging mechanism within the HTTP server, which can currently be achieved by overriding the However, both #1421 and this issue have in common that their exception handling is not ideal. #1421 should ideally have the callback marked as For |
Hi, this sounds like a much better approach! The change seems to be fairly straightforward. Would something like this work for you? HTTPServerRequestDelegateS handleWebSockets(void function(scope WebSocket) nothrow on_handshake)
{
return handleWebSockets(toDelegate(on_handshake));
}
HTTPServerRequestDelegateS handleWebSockets(void function(scope WebSocket) on_handshake)
{
logWarn("SOME DEPRECATION WARNING");
return handleWebSockets(toDelegate(on_handshake));
} Maybe we could use a similar approach for the |
@jdeschenes: I was worried that overloading based on |
No sign of any stack trace.
The text was updated successfully, but these errors were encountered: