weibocom / motan

A cross-language remote procedure call(RPC) framework for rapid development of high performance distributed services.
Other
5.89k stars 1.78k forks source link

非业务异常的异常栈传输 #878

Open back-zhao opened 4 years ago

back-zhao commented 4 years ago

我看到有类似这样的设置transExceptionStack 但是设置后非业务异常的异常栈没有传输到client。请问如何传输详细的异常栈到client.在filter中尝试包装成Biz异常传输也失败了

rayzhang0603 commented 4 years ago

只有使用hessian2序列化方式才能传递异常栈,其他序列化不支持。

transExceptionStack这个参数默认是true,只有不想传递异常栈时才需要设置为false。

back-zhao commented 4 years ago

请问 Motan后续会考虑simple等其他序列化方式时 传输异常栈么

rayzhang0603 commented 4 years ago

暂时没有这个计划。

关于异常栈是否应传递到client侧,我们内部也讨论过很多次,最后的结论是client侧只需要关注异常类型,不需要关注造成异常的(未知的)原因,出现异常应联系服务提供方进行排查;server侧应关注未知异常,并根据对应的异常栈排查问题

如果一定要传输异常栈可以实现自定义filter把异常栈使用string方式放在request的attachment中。