跳转到主要内容

UI扩展

使用UI扩展向核心Grafana UI和其他应用程序插件贡献新的动作和功能。

术语定义

在深入细节之前,我们需要介绍UI扩展框架中的两个主要概念:

  1. 扩展点 - UI中的一个位置,插件可以向其中贡献新的功能给最终用户。Grafana UI公开扩展点,应用程序插件也可以定义自己的扩展点。
  2. 扩展 - 由应用程序插件注册的新功能,出现在扩展点上。例如,扩展可以提供一个导航链接将用户带到特定的视图,可以打开一个模态菜单允许用户在当前上下文中配置要执行的操作(例如,创建SLO),或者可以触发后台任务。
Panel menu showing available extensions
面板菜单显示可用的扩展

在上面的例子中,有一个扩展点注册了三个扩展。这突出了使用UI扩展的一个好处。一旦你向UI中添加了一个扩展点,你可以通过多个插件多次扩展它。

为什么我要添加一个扩展点?

应用程序插件可以在Grafana用户界面中提供自定义页面,通常与特定服务或任务高度相关,以便用户能够高效工作。Grafana是一个功能丰富的可观察性平台,拥有广泛的插件生态系统,允许用户监控和采取广泛的行动。

扩展点可以促进打破个人视图之间的孤岛,使用户能够快速利用当前环境中的数据采取相关行动。通过在您的应用程序中提供扩展点,相关的扩展可以轻松地向您的共享用户提供新功能。

将扩展点添加到您的UI中,可以获得以下好处

  • 仅定义一次UI扩展点,即可使多个插件扩展您的UI以提供新功能。您不需要做任何额外的工作,就可以在您的UI中提供更多插件的功能。
  • 关注点的清晰分离。您的应用程序不需要了解任何有关扩展您UI的插件的信息。
  • 为变化构建的集成。由于您的应用程序不了解扩展您UI的插件内部工作原理,因此它们可以自由更改它们的API,而不会破坏扩展点UI。
  • 易于启动。如果两个应用程序都已安装和启用,则扩展将自动配置并显示给用户。无需任何应用程序包含检测另一个应用程序存在的自定义逻辑。
  • 扩展速度快。我们在Grafana启动时预先构建扩展注册表,这使得在使用渲染UI时非常快速。

有用的情况示例

  • 用户查看包含历史数据的仪表板。通过在此UI部分添加扩展点,机器学习应用程序插件可以允许用户直接从面板创建该数据的预测。
  • 用户查看正在触发的警报。通过在此UI部分添加扩展点,事件应用程序插件可以允许用户直接从警报视图创建事件。

进一步说明