菜单
文档breadcrumb arrow Grafana 文档breadcrumb arrow 新特性breadcrumb arrow Grafana v8.0 的新特性
Grafana Cloud Enterprise 开源

Grafana v8.0 的新特性

本主题包含 Grafana v8.0 的发布说明。更多详情,请阅读完整的 CHANGELOG.md

Grafana OSS 功能

这些功能包含在 Grafana 开源版中。

Grafana v8.0 告警

Grafana 8.0 中的新告警是一项选择加入的功能,它将 Grafana 管理的告警以及来自 Prometheus 兼容数据源的告警信息集中到统一的 UI 和 API 中。您可以创建和编辑 Grafana 管理的告警、Mimir 告警和 Loki 告警规则,并可在单一、可搜索的视图中查看来自 Prometheus 兼容数据源的告警信息。有关如何创建和编辑告警和通知的更多信息,请参阅 Grafana 告警

作为新的告警变更的一部分,我们引入了一个新的数据源 Alertmanager,它内置支持 Prometheus Alertmanager。它目前处于 alpha 阶段,除非在 Grafana 设置中启用了 alpha 插件,否则无法访问。更多信息,请参阅 Alertmanager 数据源

注意:开箱即用时,Grafana 仍支持旧的 Grafana 告警。目前它们是旧版告警,将在未来的版本中弃用。

要了解新告警和旧版告警之间的差异,请参阅 Grafana 8 告警的新特性

库面板

库面板允许用户构建可在多个仪表盘中使用的面板。对共享面板进行的任何更新都会自动应用到包含该面板的所有仪表盘。有关如何创建、添加、取消链接和管理库面板的说明,请参阅 库面板

实时流

数据源现在可以通过 WebSocket 连接向仪表盘发送实时更新。这可以与 MQTT 数据源一起使用。

除了数据源集成之外,还可以通过将指标发布到新的 live 端点 /api/live/push 来将事件发送到仪表盘。

这些指标将广播到连接到该流端点的所有仪表盘。

有关实时流的更多信息,请参阅 Grafana Live 文档

Prometheus 指标浏览器

Prometheus 指标浏览器允许您快速查找指标并选择相关标签来构建基本查询。如果您的 Prometheus 实例支持,每个指标将显示其 HELP 和 TYPE 作为工具提示。更多信息,请参阅 指标浏览器文档

柱状图可视化(Beta)

柱状图面板是一种新的可视化,支持分类数据。它仅支持一个数据帧,并且至少需要一个字符串字段作为 X 或 Y 轴的类别,以及一个或多个数值字段。

Bar chart example
柱状图示例

要将其与时间序列一起使用,您首先需要添加一个 Reduce 转换。

更多信息,请参阅 柱状图可视化

状态时间线可视化(Beta)

状态时间线可视化显示离散的状态随时间的变化。每个字段或序列呈现为一个独特的水平条带。此面板非常适用于字符串或布尔状态,但也可用于时间序列数据。当用于时间序列数据时,阈值用于将数值转换为离散的状态区域。

此面板还利用了新的值映射功能,允许您为字符串和布尔值着色。

包含字符串值的示例

state timeline with string states
包含字符串状态的状态时间线

包含时间序列数据和阈值

state timeline with time series
包含时间序列的状态时间线

更多信息,请参阅 状态时间线可视化

状态历史可视化(Beta)

状态时间线面板的姊妹面板是新的状态历史面板可视化。它可以以网格视图显示周期性状态。它支持数值、字符串或布尔状态。您可以使用值映射、阈值或渐变颜色方案来分配颜色。更多信息,请参阅 状态历史

Status grid visualization

直方图可视化(Beta)

旧 Graph 面板的这个隐藏功能现在是一个独立的可视化。它将直方图转换和柱状图可视化结合到一个单一、集成、易于使用的面板中。还有一个新的独立直方图转换,可以与任何可视化配对使用。

Histogram example
直方图示例

更多信息,请参阅 直方图

时间序列可视化更新

时间序列已退出 Beta!我们正在移除 Beta 标签,并将时间序列可视化升级到稳定状态。

  • 时间序列现在是默认可视化选项,取代了 Graph (旧版)。
  • 时间序列面板现在支持堆叠。更多信息,请参阅 堆叠时间序列图
  • 您现在可以在时间序列面板中添加告警,就像旧的 Graph 面板一样。
  • 更新了 连接 null 值 选项。
  • 我们添加了共享十字准线和工具提示的支持,现在工具提示在数据显示方面更加智能。
  • 各种性能改进。

由于这些变化, 时间序列面板 主题已更新。

节点图可视化更新

使用追踪到日志功能时,您现在可以展开显示追踪的节点图。根据数据源的不同,这可以将追踪的 span 显示为图中的节点,或作为基于当前追踪的服务地图等附加上下文。

我们还添加了网格视图和探索隐藏节点的功能。

由于这些变化, Explore 中的追踪节点图 已更新。

饼状图可视化更新

饼状图已退出 Beta!我们正在移除 beta 标签,并将饼状图可视化升级到稳定状态。

面板编辑器更新

面板编辑器进行了大量改进,很大程度上借鉴了用户研究和社区反馈。

  • 所有选项现在显示在单个窗格中。
  • 您现在可以搜索面板选项。
  • 值映射功能已完全重新设计。更多信息,请参阅 配置值映射
  • 新的 表格视图 选项始终可用。

面板 部分已更新以反映这些变化。

外观更新

Grafana 8 带来了全新的外观和感觉,包括为提高可访问性而更改的主题。改进后的 Grafana UI 带来了一系列调整和修改,使应用程序使用起来更加有趣。享受新的主页仪表盘设计吧!

在底层,新的主题架构使我们能够在未来带来更复杂的主题控制。

下载日志

当您检查面板时,现在可以将日志结果下载为文本 (.txt) 文件。

下载日志结果 由于此功能而添加。

Explore 中的检查器

新的 Explore 检查器可帮助您理解和排除查询故障。您可以检查原始数据,将数据导出为逗号分隔值 (CSV) 文件,以文本格式导出日志结果,以及查看查询请求。

Explore 中的检查器 由于此功能而添加。

Explore 日志改进

Explore 中的日志导航已得到显著改进。我们为日志添加了分页功能,因此您可以根据需要点击查看更旧或更新的日志。

由于这些变化, Explore 中的日志 已更新。

Navigate logs in Explore

插件目录

您现在可以使用插件目录应用程序在 Grafana 内部轻松管理您的插件。无需服务器重启即可安装、更新和卸载插件。

插件目录 由于此功能而添加。

性能改进

Grafana 8.0 包含了许多性能增强。

初始启动和加载性能

我们大幅减少了 Grafana 的初始下载大小,约 40%。这意味着在较慢或移动连接上,初始登录页面或主页仪表盘将加载得更快。

所有从 Flot 迁移到 uPlot 的面板也将渲染速度提高两到三倍,因为该库效率更高。目前,这包括时间序列、统计图、时间线、直方图和柱状图面板可视化。

操作和运行时性能

这些改进影响所有后续的数据更新或交互,包括

  • 流式传输性能
  • 一般的交互速度,例如缩放、工具提示、同步光标以及编辑时的面板更新

数据源更新

此 Grafana 版本包含以下数据源更新。

Azure Monitor 数据源

Azure Monitor 数据源现在支持 Azure Resource Graph。这是 Azure 中的一项服务,旨在通过提供高效且高性能的 Azure 资源探索来扩展 Azure Resource Management。

Azure Monitor 数据源现在支持为在 Azure 中托管 Grafana 的用户提供托管身份,以简化和安全地配置 Grafana 中的 Azure Monitor。

此外,除了查询 Log Analytics 工作区外,您现在还可以查询任何单独 支持的资源 或订阅或资源组中所有资源的日志。

注意:在 Grafana 7.5 中,我们开始弃用单独的 Application Insights 查询,转而通过指标和日志查询 Application Insights 资源。在 Grafana 8.0 中,无法创建新的 Application Insights 和 Insights Analytics 查询,并且现有查询已设为只读。更多详情,请参阅 弃用 Application Insights

Azure Monitor 数据源 由于这些变化而更新。

Elasticsearch 数据源

Elasticsearch 数据源供应 由于这些变化而更新。

使用 semver 字符串标识 Elasticsearch 版本

我们改变了配置的 Elasticsearch 版本处理方式。您现在可以通过供应来指定实例的完整 semver 字符串版本(例如“7.12.1”),而不是基于旧的数字版本格式。无需手动干预,旧的选项将被正确识别。

模板变量的通用支持

您现在可以使用不同的插值方法,以更广泛的方式使用模板变量。您现在可以在允许自由输入的每个查询编辑器字段中使用模板变量。

Elasticsearch template variables

允许省略支持内联脚本的指标的字段

如果提供了脚本,指标聚合可以在没有字段的情况下指定。您现在可以在支持脚本时取消选择指标聚合的字段。

以前,这只能在添加新指标而不选择字段时进行,因为一旦选择,字段就无法移除。

Elasticsearch omit fields

允许为日志查询设置自定义限制

您现在可以为日志查询设置自定义行数限制,而不是接受之前硬编码的 500。我们还简化了查询编辑器,使其仅在发出日志查询时显示相关字段。

Elasticsearch custom log limit

从第一个非空值猜测字段类型

在 Elasticsearch 响应中,响应值总是被解释为字符串,这导致一些基于数值应用逻辑的可视化类型出现问题。我们现在应用一些启发式算法,从每个响应中的第一个非空值检测值类型。

Google Cloud Monitoring 数据源

在之前的版本中,Cloud Monitoring 在其查询编辑器中添加了预处理支持。此功能已添加到 Grafana 的 Cloud Monitoring 数据源中。

无论何时在查询编辑器中选择指标,都会自动为您选择一个合适的预处理选项。为了避免重大变更,预处理默认不对现有查询启用。如果您想对现有查询使用预处理,则必须在查询编辑器中手动选择一个。

由于此更改而更新了 Google Cloud Monitoring 数据源

Graphite 数据源

由于这些变化, Graphite 数据源 已更新。

变量指标名称展开

现在可以使用 Graphite 的 expand API 来填充仪表盘变量的值。当指标查询被包裹在 expand() 函数中时,会使用 Expand API。

通过这种方式,值不仅可以包含来自指标查询的最后一个匹配节点,还可以包含指标的完整路径。还可以使用正则表达式将其缩小到特定节点。

将 Graphite 查询映射到 Loki

在 Explore 中数据源更改时,Graphite 查询现在会根据用户定义的规则自动转换为 Loki 查询。

Jaeger 数据源

您现在可以使用更多参数来查找追踪。

Jaeger 数据源 由于此更改而更新。

身份验证更新

此 Grafana 版本包含以下身份验证更新。

JWT

JWT 是 Grafana 中一个新的身份验证选项。

新增 JWT 身份验证支持

您现在可以配置 Grafana 接受 HTTP 头中提供的 JWT token。

JWT 身份验证 已添加,并且 配置 已由于此功能而更新。

OAuth

通用 OAuth 身份验证 已由于这些变化而更新。

新增 OAuth 对空范围的支持

您现在可以使用空范围配置通用 OAuth。这使得不使用或不支持范围的 OAuth Identity Provider 可以与 Grafana 身份验证配合使用。

新增 OAuth 对严格解析 role_attribute_path 的支持

您现在可以配置通用 OAuth 严格解析 role_attribute_path。默认情况下,如果 role_attribute_path 属性未返回角色,则为用户分配 Viewer 角色。通过设置 role_attribute_strict = true 可以禁用角色分配。如果未返回角色或返回无效角色,则拒绝用户访问。

Singlestat 面板已弃用

已停止对 Singlestat 面板的支持。当您升级到版本 8.0 时,所有现有的 Singlestat 面板会自动变为 Stat 面板。Stat 面板可作为插件使用。

Grafana 许可证更新

Grafana 已将其许可证从 Apache 2.0 更新为 GNU Affero 通用公共许可证 (AGPL)。更多详情,请参阅相关 博客文章问答许可证

Enterprise 功能

这些功能包含在 Grafana Enterprise 版中。

基于角色的访问控制

您现在可以添加或移除 Viewer、Editor 和 Admin 组织角色的详细权限,以便在 Grafana 内授予用户恰到好处的访问权限。可用权限包括查看和管理用户、报告以及访问控制 API 本身的能力。Grafana 在未来几个月将支持越来越多的权限。

基于角色的访问控制文档 已由于此功能而添加。

数据源查询缓存

Grafana 缓存后端数据源查询的结果,这样多个用户查看同一个仪表盘或面板时,就不会向数据源(如 Splunk 或 Snowflake)本身多次提交相同的查询。

这带来了更快的仪表盘平均加载时间,以及对数据源的整体重复查询次数更少,从而降低了成本,并减少了受到限制、达到 API 限制或数据源过载的风险。

您可以按数据源启用缓存,并且可以全局和按数据源配置生存时间 (TTL)。查询缓存可以使用 Redis、Memcached 或简单的内存缓存进行设置。

更多信息,请参阅数据源查询缓存文档

报告更新

创建报告时,您现在可以选择将表格面板导出为 .csv 文件,并附加到报告电子邮件中。这使得收件人更容易查看和处理这些数据。

对于希望在 Grafana 中实时查看数据的用户,您还可以直接从电子邮件中链接回仪表盘。此版本还包含对报告列表视图的一些改进。

更多信息,请参阅报告文档

文档中对许可限制的澄清

Grafana Enterprise 文档已更新,更具体地描述了如何计算许可角色、如何更新它们,以及在哪里可以看到影响用户许可角色的仪表盘和文件夹权限的详细信息。

更多信息,请参阅许可限制文档

重大变更

此版本包含以下重大变更。

变量

  • 从变量中移除了值分组/标签功能。任何标签都将被移除。
  • 移除了查询变量的从不刷新选项。现有变量将被迁移,任何存储的选项都将被移除。

文档已更新以反映这些变化。

Elasticsearch:对多搜索请求使用 application/x-ndjson 内容类型

对于多搜索请求,我们现在使用正确的 application/x-ndjson 内容类型,而不是不正确的 application/json。尽管这对大多数用户来说应该是透明的,但如果您在代理后面运行 Elasticsearch,请确保您的代理能够正确处理使用此内容类型的请求。

Prometheus:将现有数据源的默认 HTTP 方法更新为 POST

Prometheus 数据源的默认 HTTP 方法现在是 POST,之前是 GET。POST API 自 2018 年 1 月(Prometheus 2.1.0)以来就已经存在,并且与 GET API 相比限制更少。使用版本小于 2.1.0 且使用默认 HTTP 方法的 Prometheus 实例的用户应将其 HTTP 方法更新为 GET。