博客/工程

如何混合指标和日志与Grafana和流入

2019年6月27日6分钟

是时候停止将Grafana视为一个通用的仪表盘工具了。

“bob电竞频道Grafana Labs正在成为开发人员的可观察平台,以支持您的经典DevOps用例,”Grafana Labs的用户体验总监David Kaltschmidt说最近的一次谈话在2019年InfluxDays会议在伦敦。

在Grafabob电竞频道na Labs继续支持涌入、更多数据源以及三大云供应商的同时,它也致力于开发考虑到DevOps的新功能。

一个例子就是新的探索模式,可以在Grafana中使用版本6.0而且以上.这是现有的仪表板面板编辑经验的补充,当通过Grafana查看涌入数据时。

“如果你不想被所有面板编辑可视化样式分散注意力,你可以切换到探索模式,它将接管查询。在那里,您只需修改查询,而不必担心修改仪表板,”Kaltschmidt解释道。

他说:“这支持了DevOps的故事,你只需要再深入一点,改变一些查询来弄清楚一些事情——而且它使用了相同的查询构建器。”

在这里,Kaltschmidt概述了Grafana Labs如bob电竞频道何在Explore工作流中添加更多支持,以可视化流入数据源的指标和日志。

日志聚合的重要性

故障排除过程是一个熟悉的过程:首先是一个警报,将工程师引导到各种仪表板。然后,工程师尝试修改查询并向下钻取,直到发现哪个进程或服务器可能是问题的根本原因。最后,对日志进行了深入研究,试图发现有关潜在问题的更多细节。

日志记录是这个过程的核心——特别是对于那些可能一开始就没有仪表板或指标的工程师来说。对他们来说,日志记录可能是调查警报的唯一选择。

这就是为什么日志聚合系统很重要。如果日志仅仅存在于机器上,“如果机器消失了怎么办?卡尔茨施密特说。“然后日志也会消失。这就是为什么有一个中央地方存储日志并有一个日志聚合系统是有意义的主要原因之一。”

涌入如何与日志一起工作

与大多数时间序列数据库不同,InfluxDB允许用户存储数字值以及字符串(或文本)值。Kaltschmidt说:“我们利用这个函数来处理日志,结果证明它非常有效。”此外,他补充说,没有必要再增加一层操作复杂性,使用第二个系统来存储日志。

但下一个问题是:如何将涌入范式与隔离日志流的愿望结合起来使用,并正确地标记和标记它们?

如果没有这个功能,日志通常会被聚合到一个位置,“你最终会得到一大堆信息,”Kaltschmidt说。“然后,如果你以后想重新查看数据,就会有一长串消息。你将很难找到确切的信息,告诉你哪里出了问题。”

幻灯片14

Kaltschmidt在《flow》中概述了一个日志流模型,其中“日志”被用作度量,“消息”被作为值输入。“这使得标签真正为我们提供了隔离日志流的灵活性。可以通过数据中心、主机、文件名等任何你喜欢的方式进行隔离,”Kaltschmidt说。

最后,工程师可以使用标签过滤掉他们不需要的日志,并严格关注那些有助于他们解决问题的日志。

如何获取流量日志?

有三种方法可以将日志输入到“流入”中。

首先,涌入有一个API,这是一个node.js客户端库。

幻灯片15

但有时这种编程式日志生成并不适用于组织。另一种选择是使用Telegraf这是一个插件驱动的服务器代理,用于收集和报告指标,允许用户使用一个名为Logparser的输入插件跟踪日志或文件。

Kaltschmidt说:“这就是我如何确保我最终得到的数据格式可以在Grafana中使用。”

16页

第三种方法,Kaltschmidt说,“我在网上找到的。”如果您有一个在节点上运行搜索日志守护进程的设置,那么Fluentd也可以选择摄取日志数据到涌入。

幻灯片17

如何使用Grafana查看日志数据

在Grafana探索模式,在夜间构建中有一个新的日志查询查看器,它将在6.3版本中发布,以兼容涌入1.7和很快的涌入2.0。

新的探索功能包括:

  1. 基于过滤例如,通过选择“日志消息”,您可以看到允许您按日志文件进行筛选的标记。
  2. 浏览器的分析默认情况下,Explore在结果中加载1000行,“我们认为这是一个足够大的数据集,可以对键值对进行简单的分布。”
  3. 基层提取
  4. 重复数据删除
  5. 多行查询这允许您在相同的结果集中拥有多个不同的日志文件。

幻灯片19

Kaltschmidt说道:“我对Explore中最感兴趣的功能是分屏视图。

在Explore中,用户从一个指标查询开始。当他们点击“拆分”时,屏幕拆分并复制查询,在拆分视图中为您提供相同的查询两次。现在,一个查询可以专门用于度量,另一个可以切换到日志,这样“您就可以真正地同时查看它们,”Kaltschmidt说。

目前,连接拆分查询的唯一关联是所选的时间范围(即最近一小时,或者在下面的示例中,最近六小时)。

将来,对于InfluxDB和Explore,当从指标查询切换到日志查询时,标记将保持灵活,并将两个查询连接起来。因此,如果一个指标查询具有“Europe”标签,然后用户切换到日志,它将保留该标签和带有“Europe”标签的查询日志。

20张幻灯片

有关Grafana如何与flow一起监视日志的演示,请单击在这里

Grafana、flow和Flux的下一步是什么?

Flux目前是一个外部数据源5.3.1版本Grafana的Flux插件于本月发布,其特性包括Flux表达式编辑器和令牌认证。

你可以通过安装插件Grafana CLI,如果你遇到任何问题,请访问这个网站回购

点击查看Kaltschmidt关于设置Flux插件的快速教程在这里

虽然Grafana实bob电竞频道验室团队正致力于允许用户使用Flux查询语言查询日志,并在未来改进标签过滤用户体验,但更大的任务是统一涌入和Flux数据源,“使其更加清晰”,Kaltschmidt说。

不可否认,“同时拥有这两个数据源有点烦人,”Kaltschmidt说,他的目标是“只有一个流入数据源,你可以在其中说明你使用的是哪个版本,以及你是否需要Flux。”

但总的来说,我们的目标是让Grafana继续成为围绕日志的对话的一部分。Kaltschmidt说:“日志聚合正在成为可观察性故障诊断的核心,Grafana希望能够提供更多的支持。”