Grafana Tempo, the最近宣布分布式跟踪后端,依赖于与其他数据源的集成来进行跟踪发现。Tempo的任务是存储大量的跟踪,将它们放在对象存储中,并通过id检索它们。日志和示例允许用户比以前更快更有力地直接跳转到跟踪。
让我们挖掘一些带有现场操场的例子来尝试一下!
TNS演示
的TNS演示一个常用的用于测试和演示的操场/示例应用程序基本吗79bob官方下载 ,洛基,普罗米修斯而且节奏特性。让我们看一些使用它的例子。按照主自述文件进行安装先决条件然后设置集群.然后导航到http://localhost:8080,点击“Grafana”链接,让我们开始吧。
洛基2.0
例子
洛基2.0有一些令人惊叹的新查询功能你真的应该试试。这些改进本身就很棒,但它们对Tempo的跟踪搜索也有惊人的影响。
在TNS Demo Grafana中,导航到Explore并选择Loki作为您的数据源。让我们从一个简单的查询开始:{工作= " tns /应用程序”,水平= "信息"}
.这将返回一些日志行,如:
2020-11-06T15:02:10.261121224Z stdout F level=info msg="HTTP client success" status=200 url=http://db duration=1.03636ms traceID=fb0fbe73200e474 2020-11-06T15:02:10.014657751Z stdout F level=info msg="HTTP client success" status=200 url=http://db duration=2.116557ms traceID=2c963a78f1ee0c78 2020-11-06T15:02:09.98055353Z stdout F level=info msg="HTTP client success" status=200 url=http://db duration=2.24091ms traceID=7efd169fbc41ff4a
然后我们可以点击这些跟踪id,直接跳转到Tempo:
但是如果我们只想看到失败的痕迹呢?或者有一定的延迟?这在洛基1中是可能的。X,但通常需要复杂而脆弱的正则表达式搜索。看看洛基2.0有多简单:
{job="tns/app", level="info"} | logfmt | status >= 500 and status <= 599 and duration > 50ms
的logfmt
管道运算符解析格式化的线并且允许我们基于字段的值进行搜索。多酷啊!现在,您可以记录跟踪id旁边的任何值,并使用它来索引跟踪。
配置
以上所有功能都可以在当前的Grafana, Loki和Tempo版本中使用。另一个值得注意的配置是设置洛基衍生场从跟踪ID创建链接。这可以在示例中的数据源配置中查看:
范本
例子
我们说话的时候,样品正在制作中。预计将在7.3中支持Grafana。x,普罗米修斯的支持即将到来。注意,这个示例使用了一些基于特性分支构建的自定义映像。期待他们很快成为主人!
在TNS Demo Grafana中,导航到Explore并选择prometheus-exemplars数据源。让我们试试这个问题:
histogram_quantile(。99, sum(rate(tns_request_duration_seconds_bucket{}[1m])) by (le))
执行这个查询应该显示这个直方图的p99和一些例子:
我们可以将鼠标移到任何点上,然后单击它,直接从这个度量跳到一个跟踪。如果我们只对失败的请求感兴趣,我们可以尝试:
histogram_quantile(。99, sum(rate(tns_request_duration_seconds_bucket{status_code="500"}[1m])) by (le)))
现在每个示例都是那些聚合起来创建这个度量的请求;也就是说,它们都是失败的请求。请注意,目前示例只对延迟直方图启用,因此您应该只对延迟直方图启用tns_request_duration_seconds_bucket
.
配置
范例确实需要一些尚未发布的特性。注意,普罗米修斯和Grafana的图像不是来自master。另外,还存在以下示例链接配置:
不过,不要太担心这个!该示例为您很好地设置了一切!预计这些功能很快就会出现在这些开源应用程序中。
跟踪发现
不知何故,即使Tempo不支持本地搜索,跟踪发现比以往任何时候都更强大和更容易!使用日志在跟踪中构建一个完美的索引,其中包含适合您的字段和值。使用动态示例,只需单击一下,就可以发现与当前正在分类的问题直接相关的痕迹。
如果这些想法让你兴奋,请加入我们的#tempo频道公共松弛或者跳到回购让我们知道你的想法!想要更深入的了解,请观看我们的ObservabilityCon会议,“用Grafana使跟踪变得简单,按需。
你可以免费获得Tempo的公开测试Grafana云.我们有新的免费和付费Grafana云计划,以适应每一个用例-现在免费注册.