Grafana包含对Prometheus的内置支持。react
添加数据源Grafana
- 单击顶部标题中的Grafana图标打开侧边菜单。
- 在
Dashboards
连接下的侧边菜单中,您应找到一个名为的连接Data Sources
。 - 单击
+ Add data source
顶部标题中的按钮。 Prometheus
从“ 类型”下拉列表中选择。
注意:若是您没有
Data Sources
在侧边菜单中看到该连接,则表示您当前的用户没有Admin
当前组织的角色。正则表达式
数据源选项
名称 | 描述 |
---|---|
名称 | 数据源名称。这是您在面板和查询中引用数据源的方式。 |
默认 | 默认数据源意味着它将为新面板预先选择。 |
网址 | 你的Prometheus服务器的http协议,ip和端口(默认端口一般是9090) |
访问 | 服务器(默认)=须要从Grafana后端/服务器访问URL,须要从浏览器访问Browser = URL。 |
基本认证 | 启用Prometheus数据源的基自己份验证。 |
用户 | 您的Prometheus用户的名称 |
密码 | 数据库用户的密码 |
刮伤间隔 | 这将用做Prometheus步骤查询参数的下限。默认值为15秒。 |
查询编辑器
经过单击标题>编辑(或在鼠标e
悬停在面板上时按键)打开编辑模式下的图形。数据库
名称 | 描述 |
---|---|
查询表达式 | Prometheus查询表达式,查看Prometheus文档。 |
图例格式 | 使用名称或模式控制时间系列的名称。例如,{{hostname}} 将替换为标签的标签值hostname 。 |
最小步骤 | 设置Prometheus步骤选项的下限。步骤控制Prometheus查询引擎执行范围查询时跳转的大小。遗憾的是,没有正式的prometheus文档连接到这个很是重要的选项。 |
解析度 | 控制步骤选项。小步骤能够建立高分辨率图形,但在较大的时间范围内可能会很慢,下降分辨率能够加快速度。1/2 将尝试设置步骤选项,为每一个其余像素生成1个数据点。值1/10 将尝试设置步骤选项,以便每10个像素有一个数据点。 |
指标查找 | 在此输入字段中搜索度量标准名称。 |
格式为 | 在表格,时间序列或热图之间切换。表格格式仅适用于“表格”面板。热图格式适用于在热图面板上显示具备直方图类型的度量。在引擎盖下,它将累积直方图转换为常规,并按桶绑定排序系列。 |
注意:Grafana稍微修改查询的请求日期,以使它们与动态计算的步骤对齐。这可确保度量数据的一致显示,但可能会致使图表右边缘的数据间隙很小。后端
模板
您能够在其位置使用变量,而不是在度量标准查询中对服务器,应用程序和传感器名称等硬编码进行硬编码。变量显示为仪表板顶部的下拉选择框。这些下拉菜单能够轻松更改仪表板中显示的数据。api
查看模板文档,了解模板功能和不一样类型的模板变量。浏览器
查询变量
Query类型的变量容许您查询Prometheus以获取度量标准,标签或标签值的列表。Prometheus数据源插件提供了可在Query
输入字段中使用的如下功能。服务器
名称 | 描述 |
---|---|
label _ names() | 返回标签名称列表。 |
label _ values(label) | 返回label 每一个指标中的标签值列表。 |
label _ values(metric,label) | 返回label 指定度量标准中的标签值列表。 |
度量(公制) | 返回与指定metric 正则表达式匹配的度量标准列表。 |
查询 _ 结果(查询) | 返回一个Prometheus查询结果列表query 。 |
有关度量标准名称,标签名称和标签值的详细信息,请参阅Prometheus文档。app
使用区间和范围变量
支持
$__range
,$__range_s
而且$__range_ms
只能从Grafana V5.3编辑器
能够在查询变量中使用一些全局内置变量; $__interval
,$__interval_ms
,$__range
,$__range_s
和$__range_ms
,看到全球内置变量以获取更多信息。query_result
当您须要过滤变量查询时,这些能够方便地与函数一块儿使用,由于label_values
函数不支持查询。函数
确保将变量的refresh
触发器设置为On Time Range Change
在更改仪表板上的时间范围时获取正确的实例。
用法示例:
根据仪表板中显示的时间范围内的平均QPS,使用最繁忙的5个请求实例填充变量:
Query: query_result(topk(5, sum(rate(http_requests_total[$__range])) by (instance))) Regex: /"([^"]+)"/
在仪表板中显示的时间范围内使用具备特定状态的实例填充变量,使用更精确的$__range_s
:
Query: query_result(max_over_time(<metric>[${__range_s}s]) != <state>) Regex:
在查询中使用变量
有两种语法:
$<varname>
示例:rate(http_requests_total {job =〜“\ $ job”} [5m])[[varname]]
示例:rate(http_requests_total {job =〜“[[job]]”} [5m])
为何两种方式?第一种语法更易于读写,但不容许您在单词的中间使用变量。启用“ 多值”或“ 包含全部值”选项后,Grafana会将标签从纯文本转换为正则表达式兼容字符串。这意味着你必须使用=~
而不是=
。
注释
注释容许您在图表上叠加丰富的事件信息。您能够经过仪表板菜单/注释视图添加注释查询。
Prometheus支持两种查询注释的方法。
- 常规度量标准查询
- 针对挂起和触发警报的Prometheus查询(有关详细信息,请参阅在运行时检查警报)
步骤选项可用于限制从查询返回的事件数。
将Grafana指标归入普罗米修斯
从4.6.0开始,Grafana在/metrics
端点上公开了Prometheus的指标。咱们还在Grafana中捆绑了一个仪表板,以便您能够更快地开始查看指标。您能够经过转到数据源编辑页面并单击仪表板选项卡来导入捆绑的仪表板。在那里你能够找到一个Grafana仪表板和一个Prometheus仪表板。导入并开始查看全部指标!
使用Provisioning配置数据源
如今可使用Grafana的配置系统使用配置文件配置数据源。您能够在配置文档页面上阅读有关其工做原理以及能够为数据源设置的全部设置的更多信息
如下是此数据源的一些配置示例。
apiVersion: 1 datasources: - name: Prometheus type: prometheus access: proxy url: http://localhost:9090