我已经在Java环境中设置了Jaeger和Opentracing,它很好地记录了带有跨度和跟踪的消息。但是在捕获和记录异常时,我有点卡住了。 try { span.log(ImmutableMap.of("Exeption", "ex")); throw new IllegalArgumentException("Expecting one argument"); } catch(Exception ex) { span.log(ImmutableMap.of("Error", ex)); span.log(ImmutableMap.of("Event", "error", "Error-object", ex, "message", ex.getStackTrace())); }但是这种方式不会以良好的可读方式格式化错误日志记录。我已经四处寻找有关此内容的信息,因为它感觉很明显,因为这是其日志记录的组件之一。但我不知何故从未见过任何关于这个的事情。它主要是关于构建和构建跨度。希望任何人都可以在捕获和记录异常时帮助我。
1 回答
慕慕森
TA贡献1856条经验 获得超17个赞
这个问题看起来更多地与Java本身有关,然后是Opentracing和Jaeger。因为更多的问题。因为它应该更像ex.getStackTrace()
StringWriter errors = new StringWriter();
ex.printStackTrace(new PrintWriter(errors));
span.setTag("error", true);
span.log(ImmutableMap.of("stack", errors));
问题解决了。
添加回答
举报
0/150
提交
取消