假设我有以下服务:
在这种情况下,最佳做法是什么,我应该精确地跟踪每个操作,如计算,存储在db等中的单独跨度还是留下指标(即prometheus)并为整个通知处理创建单个跨度?
答案 0 :(得分:2)
关于适合您的应用程序的粒度以及您期望生成的跟踪数据量,这取决于您。处理每分钟几个请求的应用程序将具有与每秒处理1000个请求的应用程序不同的需求。
也就是说,我建议在控制流进入或离开应用程序时创建跨度(例如,当您的应用程序开始处理来自外部系统的请求或消息时,以及当您的应用程序调用外部依赖项时,例如HTTP请求,发送通知,或从数据库写入/读取),并使用日志/标签来处理应用程序内部的所有内容。