跳至主要内容

使用嵌套插件

Grafana 应用程序插件可以将数据源(前端和后端)与面板插件一起嵌套,以便您可以提供完整的用户体验。

开始之前

搭建一个应用程序插件。有关说明,请参阅有关 构建应用程序插件 的教程。

嵌套插件的结构

嵌套插件位于应用程序插件的 src 文件夹中。它们通常遵循与插件相同的结构,并具有自己的 plugin.json,但没有自己的 package.json.config 文件夹。

以下是一个嵌套数据源插件的示例

./src
├── README.md
├── components
+├── nested-datasource
+│ ├── components
+│ │ ├── ConfigEditor.tsx
+│ │ └── QueryEditor.tsx
+│ ├── datasource.ts
+│ ├── img
+│ ├── module.ts
+│ ├── plugin.json
+│ └── types.ts
├── img
│ └── logo.svg
├── module.ts
└── plugin.json

何时使用嵌套插件

当您有一个数据源或面板插件,您希望将其与应用程序插件一起分发时,

每个嵌套数据源都可以拥有自己的后端,独立于应用程序插件的后端。

注意

请注意,插件 nested-datasource 没有自己的 package.json。嵌套插件文件夹的名称并不重要。

如何将嵌套插件添加到应用程序插件

  1. 创建一个新的插件,它将成为嵌套插件

    重要

    从应用程序插件目录的外部开始。

    使用 create-plugin 工具生成一个新插件

    npx @grafana/create-plugin@latest

    选择所需的插件类型(数据源或面板),提供一个名称,并使用与应用程序插件相同的组织。

  2. 准备嵌套插件

    将新生成的插件的 src 文件夹重命名为一个反映其特定目的的名称(例如,nested-datasource)。

  3. 集成到您的应用程序插件中

    将重命名的 src 文件夹直接复制到应用程序插件的 src 文件夹中。您可以放心地忽略其他生成的 文件(如 package.json.config 等)。这些文件在您的应用程序中不需要。

  4. (可选)将您的数据源添加到预配的数据源中

    如果您要添加一个嵌套数据源,请记住将其添加到预配数据源 YAML 配置文件中。有关更多详细信息,请参阅有关 预配 Grafana 的文档。

  5. (可选)清理您的目录

    您现在可以删除最初生成的嵌套插件的整个目录。

通过这些步骤,您的应用程序插件现在包含了嵌套数据源或面板的源代码,准备进一步开发。