Grafana 系列文章(七):Grafana Explore 中的 Tracing
️URL: https://grafana.com/docs/grafana/latest/explore/trace-integration/
Description:
Tracing in Explore
Explore 允许你将 tracing 数据源的痕迹可视化。这在 Grafana v7.0+中可用。
支持的数据源有。
关于如何为上述数据源配置查询的信息,请参考特定数据源的文档。


- 标题。显示根 span 的名称和 trace ID。
- 搜索。突出包含搜索文本的 span。
- 元数据。关于追踪的各种元数据。
Minimap

显示浓缩的视图或跟踪时间线。在最小地图上拖动你的鼠标可以放大到更小的时间范围。缩放也将更新主时间线,所以很容易看到较短的时间跨度。当放大时,将鼠标悬停在最小地图上,将显示重置选择按钮,以重置缩放。
Timeline(时间线)

显示 trace 中的 span 列表。每个 span 行由这些组件组成。
- 展开子 span 按钮。展开或折叠选定 span 的所有子 span。
- 服务名称:记录该 span 的服务的名称。
- 操作名称:该 span 所代表的操作的名称。
- span 持续时间栏。trace 中操作持续时间的可视化表示。
在 span 行的任何地方点击,显示跨度的细节。
Span 细节

- 操作名称
- span 元数据
- Tags。与此 span 相关的任何标签。
- 进程元数据。关于记录此跨度的进程的元数据。
- 日志。此 span 所记录的日志列表和相关的键值。如果是 Zipkin 日志,则显示 Zipkin 的注释。
Node graph
你可以选择为所显示的 trace 展开节点图 (node graph)。根据数据源的不同,这可以将 trace 的 span 显示为图中的节点,或者显示一些额外的上下文,如基于当前 trace 的 service graph。

Trace to logs
Note: 在 Grafana 7.4 及更高版本中可用。
你可以从 trace 视图中的 span 直接导航到与该 span 相关的日志。目前,这对 Tempo、Jaeger 和 Zipkin 数据源是可用的。关于如何配置这个功能,请参考他们的相关文档。

点击文档图标,在 Explore 中用配置的数据源打开一个分割视图,并查询 span 的相关日志。
Data API
这个可视化需要从数据源返回一个特定的数据结构,以便正确显示它。
数据源需要返回数据框架并设置frame.meta.preferredVisualisationType = 'trace'。.
Data frame structure(数据框架结构)
必备字段:
| 字段名 | 类型 | 描述 |
|---|---|---|
| traceID | string | 整个 trace 的标识符。数据框中应该只有一个跟踪。 |
| spanID | string | 当前 span 的标识符。SpanIDs 应该在每个 trace 中是唯一的。 |
| parentSpanID | string | 父 span 的 SpanID,用于在 trace 视图中创建子 span 关系。对于没有父级的根 span,可以是 undefined。 |
| serviceName | string | 这个 span 的服务名称。 |
| serviceTags | TraceKeyValuePair[] | 与该服务有关的标签列表。 |
| startTime | number | span 的开始时间,以毫秒为单位的纪元时间 (epoch time)。 |
| duration | number | span 的持续时间,以毫秒计。 |
可选字段
| 字段名 | 类型 | 描述 |
|---|---|---|
| logs | TraceLog[] | 与当前 span 相关的日志列表。 |
| tags | TraceKeyValuePair[] | 与当前 span 相关的标签列表。 |
| warnings | string[] | 与当前 span 相关的警告列表。 |
| stackTraces | string[] | 与当前 span 相关的堆栈 trace 的列表。 |
| errorIconColor | string | 如果 span 被标记为error: true,错误图标的颜色。 |
有关类型的详细信息,请参阅 TraceSpanRow、TraceKeyValuePair 和 TraceLog
Grafana 系列文章
三人行, 必有我师; 知识共享, 天下为公. 本文由东风微鸣技术博客 EWhisper.cn 编写.
Grafana 系列文章(七):Grafana Explore 中的 Tracing的更多相关文章
- Spring Boot 2.0系列文章(七):SpringApplication 深入探索
关注我 转载请务必注明原创地址为:http://www.54tianzhisheng.cn/2018/04/30/springboot_SpringApplication/ 前言 在 Spring B ...
- NHibernate系列文章七:NHibernate对象状态
摘要 NHibernate对象持久化 NHibernate对象的三个状态:临时态.持久态.游离态(托管态) NHibernate三状态的相互转化 1. NHibernate对象持久化 NHiberna ...
- Flask系列(七)Flask中的wtforms使用
一.简单介绍flask中的wtforms WTForms是一个支持多个web框架的form组件,主要用于对用户请求数据进行验证. 安装: pip3 install wtforms 二.简单使用wtfo ...
- C#网络编程系列文章(五)之Socket实现异步UDPserver
原创性声明 本文作者:小竹zz 本文地址http://blog.csdn.net/zhujunxxxxx/article/details/44258719 转载请注明出处 文章系列文件夹 C#网络编程 ...
- C#网络编程系列文章(一)之Socket实现异步TCPserver
原创性声明 本文作者:小竹zz 本文地址http://blog.csdn.net/zhujunxxxxx/article/details/44258719 转载请注明出处 文章系列文件夹 C#网络编程 ...
- 微信JS图片上传与下载功能--微信JS系列文章(三)
概述 在前面的文章微信JS初始化-- 微信JS系列文章(一)中已经介绍了微信JS初始化的相关工作,接下来本文继续就微信JS的图片上传功能进行描述,供大家参考. 图片上传 $(function(){ v ...
- 微信JS分享功能--微信JS系列文章(二)
概述 在上一篇文章微信JS初始化-- 微信JS系列文章(一)中已经介绍了微信JS初始化的相关工作,接下来本文继续就微信JS的分享功能进行描述,供大家参考. 代码 $(document).ready(f ...
- TCP和UDP通信(C#网络编程) ---- 系列文章
文章系列目录 C#网络编程系列文章(一)之Socket实现异步TCP服务器 C#网络编程系列文章(二)之Socket实现同步TCP服务器 C#网络编程系列文章(三)之TcpListener实现异步TC ...
- IT软件人员的技术学习内容(写给技术迷茫中的你) - 项目管理系列文章
前面笔者曾经写过一篇关于IT从业者的职业道路文章(见笔者文:IT从业者的职业道路(从程序员到部门经理) - 项目管理系列文章).然后有读者提建议说写写技术方面的路线,所以就有了本文.本文从初学者到思想 ...
- Linux 系统化学习系列文章总目录(持续更新中)
本页内容都是本人系统化学习Linux 时整理出来的.这些文章中,绝大多数命令类内容都是翻译.整理man或info文档总结出来的,所以相对都比较完整. 本人的写作方式.风格也可能会让朋友一看就恶心到直接 ...
随机推荐
- Python基础部分:9、数据的类型和内置方法
目录 一.数据类型内置方法理论 1.什么是数据内置方法 2.如何调用数据内置方法 二.整型(int)内置方法与操作 1.类型转换 2.进制数转换 三.浮点型(float)内置方法与操作 1.类型转换 ...
- 「浙江理工大学ACM入队200题系列」问题 K: 零基础学C/C++84——奇偶ASCII值判断
本题是浙江理工大学ACM入队200题第八套中的K题 我们先来看一下这题的题面. 题面 题目描述 任意输入一个字符,判断其ASCII是否是奇数,若是,输出YES,否则,输出NO; 例如,字符A的ASCI ...
- TensorFlow深度学习!构建神经网络预测股票价格!⛵
作者:韩信子@ShowMeAI 深度学习实战系列:https://www.showmeai.tech/tutorials/42 TensorFlow 实战系列:https://www.showmeai ...
- 洛谷P4135 Ynoi2016 掉进兔子洞 (带权bitset?/bitset优化莫队 模板) 题解
题面. 看到这道题,我第一反应就是莫队. 我甚至也猜出了把所有询问的三个区间压到一起处理然后分别计算对应询问答案. 但是,这么复杂的贡献用什么东西存?难道要开一个数组 query_appear_tim ...
- <六>指向类成员的指针
指向类成员(成员变量和成员方法)的指针 1:定义一个指针指向类的普通成员变量 示例代码1 点击查看代码 class Test2{ public: int ma; static int mb; void ...
- golang实现一个简单的http代理
代理是网络中的一项重要的功能,其功能就是代理网络用户去取得网络信息.形象的说:它是网络信息的中转站,对于客户端来说,代理扮演的是服务器的角色,接收请求报文,返回响应报文:对于web服务器来说,代理扮演 ...
- MvvmLight框架的基本使用
关于MvvmLight框架的介绍可以看这篇,说的很详细,在此记录下来以作复习,通过一个简单的例子说明MvvmLight的基本使用 https://www.cnblogs.com/3xiaolonglo ...
- mybatis-plus分页失效原因
mybatis-plus分页失效解决方法 方法一.在启动类添加如下配置 @SpringBootApplication @MapperScan("com.**.mapper") pu ...
- 1742C
题目链接 题目大意: 在一个8x8的方格中你每次可以将一行全部涂成红色或者将一列涂成蓝色.问最后一次操作是什么操作: 如果是行操作就输出R 如果是列操作就输出B 解题思路: 我们可一枚举每行每列,如果 ...
- 【Devexpress】Gridcontrol列标题换行
gridView1.OptionsView.AllowHtmlDrawHeaders = true; gridView1.ColumnPanelRowHeight = 35; GridColumn g ...