UI扩展
使用UI扩展向核心Grafana UI和其他应用程序插件贡献新的动作和功能。
术语定义
在深入细节之前,我们需要介绍UI扩展框架中的两个主要概念:
扩展点
- UI中的一个位置,插件可以向其中贡献新的功能给最终用户。Grafana UI公开扩展点,应用程序插件也可以定义自己的扩展点。扩展
- 由应用程序插件注册的新功能,出现在扩展点上。例如,扩展可以提供一个导航链接将用户带到特定的视图,可以打开一个模态菜单允许用户在当前上下文中配置要执行的操作(例如,创建SLO),或者可以触发后台任务。
在上面的例子中,有一个扩展点注册了三个扩展。这突出了使用UI扩展的一个好处。一旦你向UI中添加了一个扩展点,你可以通过多个插件多次扩展它。
为什么我要添加一个扩展点?
应用程序插件可以在Grafana用户界面中提供自定义页面,通常与特定服务或任务高度相关,以便用户能够高效工作。Grafana是一个功能丰富的可观察性平台,拥有广泛的插件生态系统,允许用户监控和采取广泛的行动。
扩展点可以促进打破个人视图之间的孤岛,使用户能够快速利用当前环境中的数据采取相关行动。通过在您的应用程序中提供扩展点,相关的扩展可以轻松地向您的共享用户提供新功能。
将扩展点添加到您的UI中,可以获得以下好处
- 仅定义一次UI扩展点,即可使多个插件扩展您的UI以提供新功能。您不需要做任何额外的工作,就可以在您的UI中提供更多插件的功能。
- 关注点的清晰分离。您的应用程序不需要了解任何有关扩展您UI的插件的信息。
- 为变化构建的集成。由于您的应用程序不了解扩展您UI的插件内部工作原理,因此它们可以自由更改它们的API,而不会破坏扩展点UI。
- 易于启动。如果两个应用程序都已安装和启用,则扩展将自动配置并显示给用户。无需任何应用程序包含检测另一个应用程序存在的自定义逻辑。
- 扩展速度快。我们在Grafana启动时预先构建扩展注册表,这使得在使用渲染UI时非常快速。
有用的情况示例
- 用户查看包含历史数据的仪表板。通过在此UI部分添加扩展点,机器学习应用程序插件可以允许用户直接从面板创建该数据的预测。
- 用户查看正在触发的警报。通过在此UI部分添加扩展点,事件应用程序插件可以允许用户直接从警报视图创建事件。