当前位置: 首页 > 知识库问答 >
问题:

在Zipkin UI中用红色显示错误请求的痕迹

闾丘德业
2023-03-14

我正在使用Spring启动版本1.5.14.发布与Spring云侦探拉链。如果我返回一个响应实体将其 HttpStatus 设置为BAD_REQUEST,那么我看到以蓝色突出显示的跟踪。有没有办法用红色突出显示使用响应实体对象的错误请求的跟踪?

我显式地为错误请求抛出一个自定义异常,并在 Zipkin UI 中看到以红色突出显示的 zipkin 跟踪。但我不想这样做,因为我在响应实体中返回一个身体。

public  ResponseEntity<ResponseDto> saveRecord(Employee employee) {
    if(isValidated(employee)) {
        return new ResponseEntity<ResponseDto>(repo.save(employee), HttpStatus.OK);
    } else {
        return new ResponseEntity<ResponseDto>(service.handleErrorResponse(employee), HttpStatus.BAD_REQUEST);
    }
}

我希望 Zipkin 跟踪以红色突出显示,因为它是一个糟糕的请求,但实际颜色是蓝色。

实际轨迹

预期跟踪

共有1个答案

杜英叡
2023-03-14

我使用了一个方面,并从返回的响应实体对象中,决定是否以编程方式添加错误标记以 span。使用此标签,zipkin将识别并以红色突出显示迹线。下面是用于向 span 添加错误标记的代码段。

import org.springframework.cloud.sleuth.Span;
import org.springframework.cloud.sleuth.Tracer;
----
@Autowired
private Tracer tracer;

public void addErrorTag(String message) {
    Span currentSpan = tracer.getCurrentSpan();
    currentSpan.logEvent("ERROR: " + message);
    tracer.addTag("error", message);
}
 类似资料:
  • 我一直在尝试将base64数据发送到bluemix中的节点red 但是它声明我的文件请求实体太大。。。 我一直在找。。。。bodyparser模块能处理这个问题吗?或者,有什么解决方案比更改代码更容易,因为我无法下载启动程序代码来操作,因为它会将我重定向到主页 非常感谢。

  • 我得到的REST POST请求错误 > 我使用的是H2 db,我就是这样配置的 Springh2。安慰path=/h2 spring。h2。安慰启用=真正的Spring。数据源。驱动程序类名=org。h2。驱动Spring。数据源。url=jdbc:h2:文件:/db/daDbSpring。数据源。用户名=用户spring。数据源。密码=1234Spring。jpa。冬眠自动更新 ////////

  • 在Bluemix上使用Node-Red编辑器时,我添加了一个超文本传输协议请求节点。但是,当我点击“部署”时,我看到以下错误: 有没有其他方法可以找出可能出错的地方,并获得更有帮助的错误信息? 以下是我使用的选项: 该URL来自JSONPlaceHolder,这是一个免费的在线REST测试服务。 谢谢你

  • 公共视图onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){

  • Sublime Text 3中的相同代码: 默认VScode主题(深色),没有这个bug,所有函数名和方法都有相同的颜色。但是许多其他主题(例如monokai和Abyss)都有这个bug /feature. 我希望函数名称和方法具有相同的颜色(第10、11、13、16行)。理想情况下,所有行都像ST3-蓝色(第13行-绿色)。但是,如果它是绿色也没关系。 我阅读了范围命名链接,尝试比较不同的主题。

  • 问题内容: 我的应用程序中有地图活动。我正在尝试请求位置权限,但是没有显示请求权限。我不知道为什么… 这是我的完整代码: 最后,烤面包片“出现在这里2”。我想这是因为请求没有出现。除了这些行,我是否需要在清单中写一些东西? 也许我需要写一些东西来使用这些权限? 再次查看logcat之后,我发现了此日志 这是什么意思? 问题答案: 花了几天时间解决此问题后,我发现未显示请求权限的原因是由于TabHo