OpenTracing简单了解

Trace代表一个事务,请求或者流程
Trace是由多个Span组成的有向无环图
Span
每个Span可以包含的信息:
操作的名称
起始时间
结束时间
Span Tag -- Span标签
Span Log -- 一组Span的日志集合
SpanConText -- Trace的全局上下文信息
References -- Span之间的引用关系
ChildOf 关系 -- 父span依赖子Span的执行结果
FollowsFrom 关系 -- 父span不依赖子Span的执行结果
Logs简介
每个Span可以进行多次Logs操作
每次Logs操作,都需要附加一个时间戳,以及可选的附加信息(异常类型,堆栈信息等)
Tags简介
每个Span可以有多个键值对形式的Tags,Tags没有时间戳,只是为Span添加一些简单的解释和补充信息
SpanContext和Baggage
SpanContext -- 进程边界
Baggage -- 将一些全局信息封装进去,传递到下游系统中
是存储到SpanConText中的键值对集合
包含了Inject(添加键值对)/Extract(获取键值对)
核心接口定义
Span接口
获取关联的SpanContext
关闭Span
添加Span Tag
添加Log
添加Baggage Item
获取Baggage Item
SpanContext接口
遍历Baggage中的KV数据
Tracer接口
创建Span
注入SpanContext
提取SpanContext
原文地址:https://www.cnblogs.com/nihaofenghao/p/14854750.html