方案列表
以下包含部分主流的一站式方案和自建组合方案:
- skywalking
- zipKin
- opentelemetry agent + opentelemetry collector + jaeger/Tempo(traceing) + prometheus(metrics) + elasticsearch(log)
- opentelemetry agent + opentelemetry collector + elastic apm server
- elastic apm agent + elastic apm server
当然实际肯定不止这些方案,以上只是在查找资料过程中了解到的
方案对比
一个项目需要选择某个方案,肯定需要综合考虑,多维度对比产品的特点,以下是一些简单的分析:
- 体验测试过skywalking,支持无侵入,总体上还可以,但是使用这块意味着相对较为封闭,学习成本一般
- zipKin,未测试使用,查资料需要手动埋点,意味着使用成本较高
- 比较标准的监控方案,分别使用不同组件来存储、分析、展示数据,组件根据实际要求可替换性很高,但缺点是组件太多
- opentelemetry和elastic结合的方案,减少了部分组件,如果当前已经有elastic生态,那么是非常容易集成的,且依然满足随时替换后端的需求,可以按需调整
- 完全使用elastic的方案,优点可以直接集成,缺点是也相对封闭
基于以上的特性,此次选择方案4来测试使用
评论