;数据源;普罗米修斯

普罗米修斯数据源

Grafana包含对Prometheus的内置支持。本主题解释特定于Prometheus数据源的选项、变量、查询和其他选项。指添加数据源获取如何向Grafana添加数据源的说明。只有具有组织管理员角色的用户才能添加数据源。

注意:你可以使用Grafana云避免安装、维护和扩展可观察性堆栈的开销。永久免费bob体育手机二维码计划包括Grafana, 10K Prometheus系列,50gb日志等等。创建一个免费帐户开始

普罗米修斯的设置

要访问普罗米修斯设置,请将鼠标悬停在配置(齿轮)图标,然后点击数据源,然后单击Prometheus数据源。

的名字 描述
的名字 数据源名称。这就是在面板和查询中引用数据源的方式。
默认的 为新面板预先选择的默认数据源。
Url 例如,普罗米修斯服务器的URL,http://prometheus.example.org:9090
访问 只有服务器访问模式是有效的。如果已选择服务器模式,则此选项将被隐藏。否则,请更改为服务器模式,以防止出现错误。
基本认证 对Prometheus数据源启用基本身份验证。
用户 基本认证的用户名。
密码 基本认证的密码。
刮间隔 将其设置为Prometheus中配置的典型的抓取和评估间隔。默认为15秒。
HTTP方法 使用POST或GET HTTP方法查询数据源。POST是推荐和预选的方法,因为它允许更大的查询。如果您的Prometheus版本大于2.1,或者在您的网络中限制POST请求,则将此更改为GET。
类型 Prometheus服务器的类型,即普罗米修斯皮质Thanos米密尔.当在配置界面中选择此值时,Prometheus version字段尝试使用Prometheus自动检测版本buildinfoAPI。一些Prometheus类型不支持这个API,在这些情况下你需要手动填充版本(例如Cortex)。
版本 您的Prometheus服务器的版本,请注意,在选择Prometheus类型之前,该字段是不可见的。
禁用指标查找 选中此选项将禁用查询字段的自动完成中的度量选择器和度量/标签支持。如果您在较大的Prometheus实例中遇到性能问题,这将有所帮助。
自定义查询参数 向Prometheus查询URL添加自定义参数。例如超时partial_responsededup,或max_source_resolution.多个参数应该用“&”连接在一起。
原型配置
内部链接 如果您有内部链接,则启用此选项。启用此选项后,您将看到一个数据源选择器。为示例数据选择后端跟踪数据存储。
数据源 只有启用后才会看到此选项内部链接选择。为示例数据选择后端跟踪数据存储。
URL 选项时才会看到此选项内部链接选项被禁用。请输入外部链接的完整URL。您可以用插值字段中的值$ {__value。生}宏。
地址标签 属性的值,添加自定义显示标签标签名称字段。
标签名称 为示例traceID属性添加一个名称。

普罗米修斯查询编辑器

普罗米修斯查询编辑器分为两个不同的模式,您可以在两者之间切换。请参阅下面每个部分的文档。

编辑器工具栏

在编辑器的顶部,选择运行查询运行查询。选择生成器|代码选项卡在编辑器模式之间切换。如果查询编辑器处于Builder模式,则Builder部分将解释其他元素。

注意:在Explore中,要运行Prometheus查询,选择运行查询

每个模式都与其他模式同步,因此您可以在它们之间切换而不会丢失工作,尽管有一些限制。在构建器模式中还不支持一些更复杂的查询。如果你试着从代码构建器使用这样的查询,编辑器将显示一个弹出窗口,解释您可以丢失查询的某些部分,您可以决定是否仍然想继续构建器模式与否。

代码模式

代码模式

代码模式允许您在文本编辑器中编写原始查询。它实现了高级的自动完成功能和语法高亮显示来帮助编写复杂的查询。此外,它还包含标准的浏览器为了进一步帮助编写查询(参见下面的更多文档)。

有关Prometheus查询语言的更多信息,请参阅普罗米修斯的文档

自动完成

自动完成

在输入过程中,自动完成在适当的时间自动启动。使用Ctrl /cmd +空格在需要时手动触发自动完成。自动完成可以建议静态函数,聚合和关键字,但也动态项目,如指标和标签。自动完成下拉菜单还显示了建议项目的文档,可以是静态的,也可以是可用的动态度量文档。

探索使用Shift + enter运行查询。

标准的浏览器

指标浏览器允许您快速查找指标并选择相关标签来构建基本查询。当您打开浏览器时,您将看到所有可用的指标和标签。如果您的Prometheus实例支持,每个度量将显示其HELP和TYPE作为工具提示。

标准的浏览器

当您选择一个指标时,浏览器会缩小可用标签的范围,只显示适用于该指标的标签。然后,您可以选择一个或多个标签,其可用标签值显示在底部部分的列表中。为每个标签选择一个或多个值以缩小查询范围。

注意:如果一开始不记得某个指标名称,也可以先选择一些标签,缩小列表范围,然后找到相关的标签值。

指标浏览器中的所有列表上面都有一个搜索字段,用于快速筛选与特定字符串匹配的指标或标签。值部分只有一个搜索字段。它的过滤适用于所有标签,以帮助您找到标签之间的值,一旦他们被选中,例如,在您的标签应用程序工作job_name只有一个可能具有你所寻找的价值。

一旦您对查询感到满意,单击“使用查询”来运行查询。“用作费率查询”按钮增加了一个率(…)(__interval美元)围绕您的查询来帮助编写计数器指标的查询。“验证选择器”按钮将与Prometheus一起检查该选择器有多少个时间序列可用。

选项

选项

的名字 描述
传说 控制时间序列的名称。使用预定义格式或自定义格式。
汽车-如果有一个标签,它只显示每个系列的标签值。如果有多个标签,则与详细的
详细的-包括所有标签。
自定义- select将改为文本输入。使用模板选择将包含哪些标签。例如,{{主机名}}是否替换为标签的标签值主机名.清除输入,并单击输入之外返回选择模式。
分钟步 设置数据点之间间隔的下界。例如,设置“1h”来暗示测量不频繁(每小时测量一次)。__interval美元而且__rate_interval美元都受支持。
格式 你可以在表格时间序列的热图选项。的表格选项仅在“表格”面板中有效。的热图在热图面板上显示直方图类型的指标。在底层,它将累积直方图转换为常规直方图,并按桶界对系列进行排序。
类型 范围-查询返回一个范围向量,这是一组时间序列,包含每个时间序列随时间变化的数据点范围。
即时—执行“即时”查询,只返回Prometheus为所请求的时间序列抓取的最新值。即时查询可以比普通范围查询更快地返回结果。使用它们来查找标签集。即时查询结果仅由每个系列的一个数据点组成,并且可以通过添加字段覆盖、向命名的覆盖添加属性来在时间序列面板中显示变换,并选择常数变换下拉。有关更多信息,请参阅变换
范本 如果打开,则使用常规查询运行exemplars查询,并在图中显示范例。

注意:Grafana修改查询的请求日期,使它们与动态计算的步骤保持一致。这确保了指标数据的一致显示,但它可能导致图的右边缘有一个小的数据间隙。

建造者模式

下面的视频演示了如何使用Grafana version 9.0中提供的可视化Prometheus查询构建器。


工具栏

除了运行查询按钮和模式切换器,在构建器模式下可以使用其他元素:

的名字 描述
查询模式 有用的操作模式列表,可用于向查询快速添加多个操作,以实现特定的目标。
解释 切换以显示对所有查询部分和操作的逐级解释。
原始查询 切换以显示生成器生成的原始查询,该查询将被发送到Prometheus实例。

公制和标签

公制和标签

从下拉列表中选择一个特定的指标名称。根据所选的时间范围,从Prometheus服务器获取可用指标的列表。当下拉列表打开时,将内容写入选择中以搜索和筛选列表。

从下拉列表中选择需要的标签及其值。当metric被选中时,可用的标签及其值将从服务器中获取。使用+按钮,添加更多标签。使用x按钮,删除标签。

操作

操作

使用+操作按钮,向查询中添加操作。为了便于导航,将操作分组为多个部分。当操作下拉菜单打开时,写入搜索输入以搜索和筛选操作列表。

查询中的操作显示为操作部分中的框。每个都有一个带有名称和附加操作按钮的标题。将鼠标悬停在操作标头上以显示操作按钮。单击v按钮,可快速替换不同操作的同一类型。单击信息按钮,打开操作的描述工具提示。单击x按钮,删除操作。

操作可以在操作标头下有其他参数。有关每个操作的详细信息,请参阅操作描述或Prometheus文档。

有些操作只有在特定的顺序下才有意义,如果添加一个操作会导致无意义的查询,则将操作添加到正确的位置。按操作名称手动拖动操作框并拖放到合适的位置。

提示

提示

在同样的情况下,查询编辑器可以检测哪些操作最适合选定的指标。在这种情况下,它将在+操作按钮。单击提示将操作添加到查询中。

解释

解释模式

解释模式有助于理解查询。它一步一步地解释了所有查询部分和操作。

原始查询

原始查询

属性时才显示此部分原始查询从查询编辑器顶部工具栏切换设置为.它显示了将由查询编辑器创建和执行的原始查询。

选项

中的相同选项集可用代码模式。看到代码模式选项获取详细信息。

模板

在您的指标查询中,您可以使用变量代替服务器、应用程序和传感器名称之类的硬编码。变量显示为仪表板顶部的下拉选择框。这些下拉列表可以很容易地更改仪表板中显示的数据。

请查看模板介绍模板特性和不同类型的模板变量的文档。

查询变量

类型的变量查询允许您查询普罗米修斯的指标,标签或标签值的列表。Prometheus数据源插件提供了以下函数,可以在查询输入字段。

的名字 描述 使用的API端点
label_names () 返回标签名称列表。 / api / v1 /标签
label_values(标签) 属性的标签值列表标签在每一个指标上。 / / api / v1 /标签标签/值
label_values(指标、标签) 属性的标签值列表标签在指定的度量中。 /api/v1/series或/api/v1/label/标签/values,这取决于数据源配置中的Prometheus类型和版本
指标(指标) 返回与指定参数匹配的指标列表度规正则表达式。 / api / v1 /标签/ __name__ /值
query_result(查询) 属性的Prometheus查询结果列表查询 / api / v1 /查询

详情请参阅指标名称标签的名称而且标签的值都是请参考的普罗米修斯的文档

使用间隔和范围变量

支持__range美元__range_s美元而且__range_ms美元仅在Grafana v5.3中可用

您可以在查询变量中使用一些全局内置变量,例如,__interval美元__interval_ms美元__range美元__range_s美元而且__range_ms美元.看到全局内置变量获取更多信息。它们很方便与query_result函数时,需要过滤变量查询label_values函数不支持查询。

确保设置了变量的刷新触发成为关于时间范围的变化在仪表板上更改时间范围时获取正确的实例。

使用示例:

根据仪表板中显示的时间范围内的平均QPS,用最繁忙的5个请求实例填充一个变量:

查询:query_result(topk(5, sum(rate(http_requests_total[$__range])) by (instance))) Regex: /"([^"]+)“/

使用在仪表板中显示的时间范围内具有特定状态的实例填充变量__range_s美元

查询:query_result(max_over_time([${__range_s}s]) != )正则表达式:

使用__rate_interval美元

注意:在Grafana 7.2及以上版本中可用

__rate_interval美元建议使用的间隔是而且增加功能。它将在大多数情况下“工作”,避免了使用固定间隔或固定间隔时可能出现的大多数陷阱__interval美元

OK: rate(http_requests_total[5m])更好:rate(http_requests_total[$__rate_interval])

细节:__rate_interval美元定义为max(__interval美元+刮间隔, 4 *刮间隔),刮间隔是最小步长设置(又名查询间隔,每个PromQL查询设置)。否则,将使用Prometheus数据源中的抓取间隔设置。(面板中的最小间隔设置被分辨率设置修改,因此对_scraping interval没有任何影响.)这篇文章包含其他详细信息。

在查询中使用变量

有两种语法:

  • $ < varname >例如:率(http_requests_total{工作= ~“工作”美元}[5 m])
  • [[varname]]例如:率(http_requests_total{工作= ~“[[职业]]”}(5米))

为什么有两种方式?第一种语法更容易读写,但不允许在单词中间使用变量。当多值包括所有价值选项启用后,Grafana将标签从纯文本转换为正则表达式兼容的字符串。这意味着你必须使用= ~而不是

Ad hoc过滤器变量

普罗米修斯支持特别节目AD hoc过滤器变量类型。它允许您动态地指定任意数量的标签/值过滤器。这些过滤器将自动应用于所有Prometheus查询。

注释

注释允许您在图形之上覆盖丰富的事件信息。您可以通过Dashboard菜单/ Annotations视图添加注释查询。

Prometheus支持两种查询注释的方法。

  • 一个常规的度量查询
  • 用于挂起和触发警报的Prometheus查询(有关详细信息,请参见在运行时检查警报

step选项用于限制从查询返回的事件数量。

把格拉夫纳的度量标准传送到普罗米修斯

Grafana公开了普罗米修斯的度量标准/指标端点。我们还在Grafana中捆绑了一个仪表板,这样您就可以更快地开始查看您的指标。您可以通过转到数据源编辑页并单击仪表板选项卡来导入捆绑的仪表板。在那里你可以找到一个Grafana的仪表盘和一个Prometheus的仪表盘。导入并开始查看所有指标!

有关详细说明,请参阅内部Grafana度量

普罗米修斯API

Prometheus数据源与实现普罗米修斯查询API包括:

有关如何从Grafana查询其他prometheus兼容项目的更多信息,请参阅具体的项目文档。

提供Prometheus数据源

您可以在Grafana的供应系统中使用配置文件配置数据源。详细了解它的工作原理以及可以为数据源设置的所有设置配置文档页面

以下是该数据源的一些配置示例:

apiVersion: 1 datasources: -名称:Prometheus类型:Prometheus #访问模式-代理(服务器在UI)或直接(浏览器在UI)。访问:代理url: http://localhost:9090 jsonData: httpMethod: POST prometheusType: prometheusVersion: 2.37.0 exemplarTraceIdDestinations: #字段与内部链接指向数据源在Grafana。# datasourceUid值可以是任何值,但在所有已定义的数据源uid中应该是唯一的。—datasourceUid: my_jaeger_uid name: traceID #带外部链接的字段。-名称:traceID url: 'http://localhost:3000/explore?orgId=1&left=%5B%22now-1h%22,%22now%22,%22Jaeger%22,%7B%22query%22:%22$${__value.raw}%22%7D%5D'

亚马逊Prometheus托管服务

Prometheus数据源与Amazon Managed Service for Prometheus一起工作。如果您正在使用AWS身份和访问管理(IAM)策略来控制对Prometheus域的Amazon托管服务的访问,则必须使用AWS签名版本4 (AWS SigV4)对该域的所有请求进行签名。有关AWS SigV4的详细信息,请参阅AWS的文档

注意:Grafana 7.3.5或更高版本需要使用SigV4身份验证。

要使用SigV4身份验证将Prometheus数据源连接到Amazon Managed Service for Prometheus,请参阅AWS指南建立与AMP一起使用的Grafana开源或Grafana Enterprise

如果您正在Amazon EKS集群中运行Grafana,请遵循AWS指南在Amazon EKS集群中使用Grafana查询

配置范本

注意:该特性在Prometheus 2.26+和Grafana 7.4+中可用。

Grafana 7.4及后续版本能够在Explore和Dashboards中显示范例数据和度量。范例是一种将来自特定事件的更高基数元数据与传统时间序列数据关联起来的方法。

显示范例细节窗口的截图
显示范例细节窗口的截图

通过添加外部或内部链接,在数据源设置中配置范例。

Exemplars配置的屏幕截图
Exemplars配置的屏幕截图