mirror of
https://github.com/c-cube/linol.git
synced 2025-12-06 11:15:46 -05:00
try to print backtraces when handlers fail
This commit is contained in:
parent
e5cb0a331b
commit
b7e89f67e4
1 changed files with 4 additions and 2 deletions
|
|
@ -171,10 +171,11 @@ module Make(IO : IO)
|
||||||
let protect ~id f =
|
let protect ~id f =
|
||||||
IO.catch f
|
IO.catch f
|
||||||
(fun e ->
|
(fun e ->
|
||||||
|
let message = spf "%s\n%s" (Printexc.to_string e) (Printexc.get_backtrace()) in
|
||||||
let r = Jsonrpc.Response.error id
|
let r = Jsonrpc.Response.error id
|
||||||
(Jsonrpc.Response.Error.make
|
(Jsonrpc.Response.Error.make
|
||||||
~code:Jsonrpc.Response.Error.Code.InternalError
|
~code:Jsonrpc.Response.Error.Code.InternalError
|
||||||
~message:(Printexc.to_string e) ())
|
~message ())
|
||||||
in
|
in
|
||||||
send_response self r)
|
send_response self r)
|
||||||
in
|
in
|
||||||
|
|
@ -222,11 +223,12 @@ module Make(IO : IO)
|
||||||
IO.failwith (spf "cannot decode request: %s" e)
|
IO.failwith (spf "cannot decode request: %s" e)
|
||||||
end)
|
end)
|
||||||
(fun e ->
|
(fun e ->
|
||||||
|
let message = spf "%s\n%s" (Printexc.to_string e) (Printexc.get_backtrace()) in
|
||||||
let r =
|
let r =
|
||||||
Jsonrpc.Response.error id
|
Jsonrpc.Response.error id
|
||||||
(Jsonrpc.Response.Error.make
|
(Jsonrpc.Response.Error.make
|
||||||
~code:Jsonrpc.Response.Error.Code.InternalError
|
~code:Jsonrpc.Response.Error.Code.InternalError
|
||||||
~message:(Printexc.to_string e) ())
|
~message ())
|
||||||
in
|
in
|
||||||
send_response self r)
|
send_response self r)
|
||||||
in
|
in
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue