整体思路

如果每一个 tid 都绘制一个图,数据比较准确。但是数据量很大。

也可以根据 CAT 这种公司已经接入的技术栈,推进通过 kafka 采样解析处理。

数据全部放在 neo4j 之类的图数据库中。

性能

考虑 batch 批量入库处理,unwind 解析入库。

应用内

可以通过代码的静态扫描获取。

流水线+gitlab 之类的代码仓库静态调用扫描。

调用拓扑图

  [plaintext]
1
2
3
4
5
6
7
8
9
CAT | 采样发送到 kafka | logstash4j 等解析处理 | neo4j 等落库 | 页面可视化处理

tid

用来处理唯一的标识

如果需要区分不同场景,可以使用这个字段。

范围

初期实现,可以直处理 URL/dubbo 这种方法调用。

参考资料

https://github.com/alibaba/transmittable-thread-local