插件 〉Business Forms
Business Forms
Grafana 的 Business Forms
简介
Business Forms 面板是 Grafana 的一个全新概念插件。它是第一个允许直接从 Grafana 仪表盘插入和更新应用数据以及修改配置的插件。
要求
- Business Forms 面板 4.X 需要 Grafana 10.3 或 Grafana 11。
- 数据操作面板 3.X 需要 Grafana 9 或 Grafana 10。
- 数据操作面板 2.X 需要 Grafana 9 或 Grafana 8.5。
- 数据操作面板 1.X 需要 Grafana 8。
入门
您可以从 Grafana 插件目录 安装 Business Forms 面板,或使用 Grafana 命令行工具。
对于后者,请使用以下命令
grafana cli plugins install volkovlabs-form-panel
亮点
- 提供创建可定制表单的功能。
- 支持初始请求和更新请求的自定义代码。
- 支持 API 请求,包括用于获取初始值的
GET
请求以及用于发送在表单中更新值的DELETE
、PATCH
、POST
和PUT
请求。 - 允许为初始请求和更新请求添加请求头。
- 支持自定义提交和重置按钮以及表单布局。
- 允许将表单元素拆分为不同的部分。
- 允许在运行更新请求前请求用户确认。
- 允许在请求载荷中发送所有元素或仅发送已更新的元素。
- 允许通过自定义代码显示成功和错误通知。
- 支持在代码编辑器中编写程序代码时提供可用参数建议。
文档
章节 | 描述 |
---|---|
数据流 | 解释数据流及其细节。 |
表单元素 | 解释表单元素的细节。 |
REST API | 解释 REST API 架构以及如何使用 NGINX。 |
自定义代码 | 解释如何访问插件选项、API 响应、表单元素和 Grafana 服务。 |
功能 | 解释插件功能。 |
服务器 | 提供 API 服务器实现示例。 |
教程 | 易于遵循的教程 |
发布说明 | 及时了解最新功能和更新。 |
Grafana 的 Business Suite
Business Suite 是 Volkov Labs 创建并积极维护的开源插件集合。
该集合旨在通过提供直观的界面、详细的书面文档、示例和视频教程来解决最常见的业务任务。
企业支持
使用 Business Suite Enterprise,您不仅获得产品,更获得完整的支持体系。您将拥有指定的支持团队,随时准备解决任何问题。
您可以通过 Zendesk 联系我们,在功能请求和错误修复方面获得优先权,与我们进行面对面咨询,并访问商业智能。这是一个旨在让您的工作更轻松的套装。
随时欢迎您的反馈
- 在 GitHub issues 提出问题、请求新功能或报告问题。
- 订阅我们的 YouTube 频道 并留下您的评论。
- 成为 Business Suite 赞助者。
许可证
Apache 许可证版本 2.0,请参阅 LICENSE。
在 Grafana Cloud 上安装 Business Forms
在 Grafana Cloud 实例上安装插件是一键式的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能显示在您的 Grafana 中。
在 Grafana Cloud 实例上安装插件是一键式的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能显示在您的 Grafana 中。
在 Grafana Cloud 实例上安装插件是一键式的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能显示在您的 Grafana 中。
在 Grafana Cloud 实例上安装插件是一键式的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能显示在您的 Grafana 中。
在 Grafana Cloud 实例上安装插件是一键式的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能显示在您的 Grafana 中。
在 Grafana Cloud 实例上安装插件是一键式的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能显示在您的 Grafana 中。
在 Grafana Cloud 实例上安装插件是一键式的;更新也一样。很酷,对吧?
请注意,插件可能需要最多 1 分钟才能显示在您的 Grafana 中。
欲了解更多信息,请访问关于插件安装的文档。
在本地 Grafana 上安装
对于本地实例,插件通过简单的 CLI 命令进行安装和更新。插件不会自动更新,但您会在 Grafana 中收到更新可用通知。
1. 安装面板
使用 grafana-cli 工具通过命令行安装 Business Forms
grafana-cli plugins install
插件将安装到您的 Grafana 插件目录中;默认路径为 /var/lib/grafana/plugins。有关 CLI 工具的更多信息。
2. 将面板添加到仪表盘
已安装的面板会立即在 Grafana 主菜单的“仪表盘”部分中显示,可以像 Grafana 中的任何其他核心面板一样添加。
要查看已安装的面板列表,请单击主菜单中的插件项。核心面板和已安装的面板都会显示出来。
变更日志
5.1.0 (2024-02-26)
功能/改进
- 为 TextArea 和 CodeEditor 元素添加了 isEscaping 选项 (#581)
- 添加了对数据流状态的支持 (#577)
- 重构表单元素 (#576)
- 更新至 Grafana 11.5 及相关依赖项 (#582)
- 更新发布工作流程以包含证明 (#582)
5.0.0 (2024-12-23)
重大变更
- Show If、Disabled 和 Options 中的仪表盘变量会自动替换。不再需要并已移除函数
replaceVariables
。
功能/改进
- 更新了自定义选项的更改值行为 (#562)
- 添加了类型为 color 的表单元素 (#561)
- 更新了文本区域和代码编辑器中的换行符 (#563)
- 添加了对数据源中变量的支持 (#564)
- 更新了代码编辑器的包 (#569)
- 更新了元素助手 (#570)
- 更新至 Grafana 11.4.0 及相关依赖项 (#571)
4.9.0 (2024-11-16)
功能/改进
- 移除 DatasourceResponseError,已移至外部组件 (#535)
- 为支持的代码编辑器语言添加了 HTML、Markdown (#543)
- 更新选项,使用数据源 ID 而非名称 (#539)
- 更新了 E2E 测试 (#538)
- 更新了 Update Request 中的刷新函数 (#547)
- 添加了动态更新部分的功能 (#542)
- 移除了 Update Request 中的默认载荷 (#550)
4.8.0 (2024-10-25)
功能/改进
- 添加了 Date 表单元素 (#520)
- 更新仪表盘场景的刷新 (#522)
- 更新了文本区域、代码编辑器元素以转义多行 (#520)
- 使用 useDashboardRefresh hook 更新仪表盘场景的刷新 (#528)
- 添加了处理数据源请求错误 (#530)
- 更新至 Grafana 11.3.0 及相关依赖项 (#531)
4.7.0 (2024-10-08)
功能/改进
- 更新了 Autosize 代码编辑器工具栏 (#506)
- 为 Select, Multi select 添加了自定义输入 (#507)
- 在初始字段支持中添加了对 frame 的支持 (#508)
- 更新了禁用文本区域元素的行为 (#514)
4.6.0 (2024-09-28)
功能/改进
- 更新了从数据源获取的元素初始值 (#490)
- 在代码编辑器中添加了换行按钮 (#491)
- 更新了 Initial Request 的加载条 (#492)
- 为类型为 Button 的元素添加了标签背景和标签颜色 (#502)
4.5.0 (2024-09-06)
功能/改进
- 更新了日期和时间输入时区 (#452)
- 在按钮标题中添加了仪表盘变量支持 (#479)
- 更新了 Code 元素中的建议位置 (#483)
- 在 sections 和 labels 中添加了变量支持 (#485)
4.4.0 (2024-08-29)
功能/改进
- 添加了可展开的编辑器 (#472)
- 更新了多选元素的预选 (#474)
- 更新了数据源查询错误显示 (#477)
4.3.1 (2024-08-16)
错误修复
- 修复了嵌套对象属性未定义时的迁移助手问题 (#468)
4.3.0 (2024-08-12)
功能/改进
- 添加了表单元素助手 (#460)
- 更新了载荷选项迁移 (#464)
- 添加了元素自定义按钮 (#463)
4.2.0 (2024-07-18)
功能/改进
- 更新了 Docker Compose 和 E2E pipeline (#446, #447)
- 改进了单元测试 (#447)
- 更新了 Business Forms 教程 (#451)
- 更新了将值与初始值进行比较的逻辑 (#454)
- 更新了初始值 Query 字段的位置 (#455)
4.1.0 (2024-07-09)
功能/改进
- 更新了上下文参数迁移 (#433)
- 更新了 provision 文件 (#433)
- 更新了带有自定义选项的 Checkbox list (#435)
- 更新了代码默认值以使用上下文属性 (#438)
- 使用 Docker 更新了 E2E 工作流程 (#441)
4.0.0 (2024-07-01)
重大变更
- 需要 Grafana 10 和 Grafana 11
- 数据源请求已更新为使用 Query Editor。
- 移除了非上下文代码参数。请将参数更新为使用
context
。
代码参数迁移指南
- data -> context.panel.data
- elements -> context.panel.elements
- initial -> context.panel.initial
- initialRequest -> context.panel.initialRequest
- locationService -> context.grafana.locationService
- notifyError -> context.grafana.notifyError
- notifySuccess -> context.grafana.notifySuccess
- notifyWarning -> context.grafana.notifyWarning
- onChange -> context.panel.onChange
- onOptionsChange -> context.panel.onOptionsChange
- options -> context.panel.options
- replaceVariables -> context.grafana.replaceVariables
- response -> context.panel.response
- setInitial -> context.panel.setInitial
- templateService -> context.grafana.templateService
- toDataQueryResponse -> context.utils.toDataQueryResponse
功能/改进
- 名称更新为 Business Forms Panel (#361)
- 添加了对前端数据源的支持 (#361)
- 更新了新选项的选定类型 (#402)
- 为 Grafana 11 做好准备 (#399)
- 更新了 Reset 按钮处理程序 (#422)
- 更新了 Confirmation Window (#420)
- 更新了代码编辑器 showIf, disableIf, getOptions 中的错误处理 (#410)
- 更新了 Get Options Code 的描述 (#404)
- 为元素添加了自定义颜色/背景颜色 (#386)
- 添加了可折叠部分 (#409)
- 更新至 Grafana 11.1 及相关依赖项 (#426)
- 更新了 Date Time 查询字段 (#429)
3.8.0 (2024-05-30)
功能/改进
- 添加了 Checkbox List 元素 (#382)
- 更新了代码编辑器中的语法支持 (#383)
- 添加了插件 e2e 测试并移除了 cypress (#390)
- 添加了基于服务器的表单元素示例 (#392)
- 添加了输入类型 time (#385)
- 更新了隐藏/显示多选元素 (#389)
- 更新了文件类型允许的文件 (#388)
- 添加了表单验证 provision 仪表盘 (#411)
3.7.0 (2024-03-10)
重大变更
- 需要 Grafana 9.2 和 Grafana 10
功能/改进
- 添加了 update enabled 选项和变量示例,修复了 sync 选项 (#356)
- 添加了文件上传示例并修复了 form data 头 (#357)
- 添加了带有 builder 的代码参数,并为元素值更改代码添加了初始请求 (#358)
- 允许在确认模态框中禁用列 (#360)
- 更新了依赖项和 Actions (#368)
- 添加了跳过使用 Show If 隐藏的元素不包含在更新载荷中 (#369)
- 添加了多文件选项 (#375)
3.6.0 (2023-01-10)
功能/改进
- 将后端服务添加到自定义代码 (#331)
- 添加了对载荷中文件 base64 编码的支持 (#331)
- 将 Context 参数添加到 Payload (#331)
错误修复
- 修复了元素自定义选项来源问题 (#334)
3.5.0 (2023-01-04)
功能/改进
- 添加了 disable if 代码 (#321)
- 更新了 reset 按钮隐藏时 reset 请求的可见性 (#322)
- 为 select 元素添加了 code options 来源 (#323)
- 添加了值更改代码 (#324)
- 更新至 Node 20 (#326)
- 为代码编辑器添加了建议 (#327)
- 添加了 reset 按钮确认 (#328)
3.4.0 (2023-12-14)
功能/改进
- 添加了禁用面板同步的功能 (#298)
- 更新了 ESLint 配置并进行重构 (#299)
- 更新了来自 @volkovlabs/components 的 Collapse (#299)
- 将 EventBus 和 AppEvents 添加到 Context (#307)
- 在 Payload 函数中添加了替换变量的功能 (#309)
- 更新至 Grafana 10.2.2 和 Volkov labs 包 (#313)
- 添加了 options 迁移 (#315)
错误修复
- 修复了 draggable control 以支持即将到来的 Grafana 变更 (#314)
3.3.0 (2023-11-21)
功能/改进
- 添加了 Disabled Text Area 元素类型 (#243)
- 添加了 Confirmation Window 选项 (#242)
- 将 context 对象添加到自定义代码 (#255)
- 添加了从查询中选择选项 (#254)
- 添加了允许输入小数的 NumberInput 组件 (#291)
- 更新至 Plugin Tools 2.1.1 (#292)
- 使用 Grafana Access Policy 签署插件 (#292)
- 更新至 Grafana 10.2.1 (#292)
- 更新了 ESLint 配置 (#294)
- 添加了 Autosize 代码编辑器 (#295)
- 为 Reset 按钮添加了 Data Source 选项 (#296)
- 添加了 Link 元素 (#297)
错误修复
- 允许在数字字段中输入零值 (#288)
3.2.1 (2023-09-07)
功能/改进
- 为 option id 添加了向后兼容性 (#244)
3.2.0 (2023-09-06)
功能/改进
- 为 date time 元素添加了最小和最大日期 (#225)
- 将数据源值映射到元素 (#224)
- 更新了元素 Show If 以支持变量 (#230)
- 在初始请求和更新请求前添加了清除错误 (#232)
- 为变量添加了 URL 编码 (#231)
- 允许部分名称为空 (#228)
- 为 Initial Request 添加了 Query Field Picker (#227)
- 为文件上传添加了 File 元素类型 (#229)
- 添加了根据类型将选项值转换为字符串和数字 (#233)
- 为 Initial, Update 和 Reset 按钮操作添加了加载状态 (#234)
- 添加了对异步自定义代码的支持 (#234)
- 更新了 Query 和 Data Source 的初始请求 (#237)
- 为 radio 和 select 选项添加了图标 (#238)
3.1.0 (2023-08-13)
功能/改进
- 更新了 jest selectors 以使用 npm 包 (#209)
- 在自定义代码中添加了 onChange 以更新本地状态中的元素 (#214)
- 更新了 ESLint 配置 (#215)
- 添加了 Multi Select 元素 (#217)
- 添加了条件元素可见性 (#219)
- 添加了自定义载荷代码编辑器 (#220)
- 添加了自定义 reset 代码编辑器 (#221)
- 添加了 Data Source 请求 (#222)
3.0.0 (2023-07-15)
重大变更
- 需要 Grafana 9 和 Grafana 10。
- 表单元素默认保存在本地状态中,不会保存到仪表盘中。
- 本地状态和元素重构可能会引入重大变更。请在生产环境中使用前进行测试。
功能/改进
- 更新了 API 服务器文档 (#149)
- 更新至 Grafana 10.0.0 (#165, #172, #184, #200)
- 为 String 元素添加了 Hidden 选项 (#171)
- 添加了 E2E Cypress 测试 (#180)
- 提高了测试覆盖率并更新了测试库 (#181, #183, #185)
- 更新了表单元素以延迟保存更改,支持自动保存 (#186)
- 迁移到 Plugin Tools 1.5.2 (#187, #192)
- 更新至 Node 18 (#188)
- 更新了常量和 E2E 测试 (#190)
- 更新了表单元素以使用本地状态 (#191)
- 添加了 notifyWarning() 函数 (#201)
- 为元素编辑器添加了拖放功能 (#202)
- 移除了对 Grafana 8.5 的支持 (#203)
- 在初始更新时添加了运行初始请求 (#205)
- 添加了垂直布局方向 (#206)
2.8.0 (2023-03-16)
功能/改进
- 为 Select 和 Radio 选项添加了 String, Number 类型 (#120)
- 为 Disabled 元素添加了 Lookup 选项 (#121)
- 为 Feedback Dashboard 添加了带有 MYSQL 的 Server API (#125)
- 更新至 Grafana 9.3.1 (#129)
- 为 DELETE 请求添加了选项 (#130)
- 添加了“仅按钮”布局用于执行 GET/POST/DELETE 请求 (#131)
- 更新了 README 并将文档移至 docs.volkovlabs.io (#132)
- 更新了 README 和文档 (#134)
- 重构了 API 服务器 (#128)
- 更新了 CI 和 Release 工作流程 (#145)
- 更新至 Grafana 9.4.3 (#146)
- 添加了 NoPadding 以移除周围的额外填充并使其可配置 (#146)
- 更新了 README 和文档 (#147)
错误修复
- 修复了 Password 和 Boolean 元素的确认问题 (#120)
2.7.0 (2022-11-10)
功能/改进
- 更新至 Grafana 9.2.2 (#113)
- 更新了 CI 以上传已签名的 artifact (#116)
- 允许在 Payload 中发送所有值或仅更新的值 (#116)
- 将 Initial values 参数添加到 Update Request 参数 (#117)
- 提交表单后添加了状态通知 (#98)
- 为 Monaco Code Editor 添加了可用参数建议 (#88)
2.6.0 (2022-10-23)
功能/改进
- 添加了兼容性检查工作流程 (#92)
- 更新至 Grafana 9.1.6 (#92)
- 添加了自定义代码以在更新请求后更新变量 (#106)
- 为 Number Input 和 Slider 添加了 min, max 验证 (#95)
- 从数据源查询初始化元素值 (#105)
- 更新 CI 至 Node 16 并与 Release 工作流程同步 (#109)
错误修复
- 初始 GET 请求日期时间格式化 (#99)
2.5.0 (2022-09-10)
功能/改进
- 添加了 Request Header 检查 (#85)
- 在自定义代码中暴露
initialRequest()
以重新加载面板 (#89) - 将
json
设置为 Initial Request 的响应数据 (#90) - 更新至 Grafana 9.1.4 (#91)
2.4.0 (2022-08-31)
功能/改进
- 更新至 Grafana 9.1.1 (#72)
- 在 README 中解释如何使用 Dashboard Variables (#73)
- 在示例中添加了 onOptionsChange 以更新面板 (#75)
- 在 URL 中添加了变量,以便从表单元素中调用 (#78)
- 将 Custom Update Request 添加到 README (#79)
- 添加了 Deno Deploy Playground 服务器和仪表盘 (#80)
- 在 README 中添加了“如何使用 Grafana 仪表盘操作数据”视频 (#80)
- 在 Confirmation Panel 中显示 Title 而非 Id (#81)
- 避免为禁用元素显示确认 (#77)
- 提高了测试覆盖率 (#21)
2.3.0 (2022-08-11)
重大变更
- 已签署为社区插件。
功能/改进
- 更新了 README 中的 Sample code (#67)
- 更新以便包含在 Grafana Marketplace 中 (#68)
2.2.0 (2022-08-09)
功能/改进
- 更新至 Grafana 9.0.6 (#63)
- 允许从数据源获取元素的初始值和配置 (#22)
- 更新了未定义元素时的警报 (#66)
错误修复
- Number Slider 未正确更新 (#18)
2.1.0 (2022-07-17)
功能/改进
- 基于 9.0.3 重建 (#58)
- 自动代码编辑器格式化 (#59)
- 在 Readme 中解释 Custom code (#60)
- 更新了 README 中带教程的 YouTube 链接 #61
2.0.0 (2022-06-17)
重大变更
- 需要 Grafana 8.3+ 和 9.0+
功能/改进
- 基于 9.0.0 重建 (#53)
1.4.0 (2022-05-30)
功能/改进
- 允许更新 Element Width (#50)
- 为更改的值添加了高亮 (#51)
- 提交前添加了确认 (#52)
1.3.0 (2022-05-22)
功能/改进
- 更新了 Architecture Diagram (#44)
- Submit 按钮颜色更改不正确 (#43)
- 更新布局以包含表单字段部分 (#47)
- 为 Initial 和 Update 请求添加了 None Request (#48)
- 为配置表单添加了 Code Editor 元素 (#23)
1.2.0 (2022-05-19)
功能/改进
- 添加了 Label Width 和 Tooltip (#39)
- 为 Feedback Dashboard 添加了带有 Postgres 的 Server API (#36)
- 将 Input Parameters 更新为 Form Elements (#41)
1.1.0 (2022-05-12)
功能/改进
- 添加了 Disabled Element (#24)
- 添加了上下移动元素的功能 (#19)
- 添加了 Input/Output 的 Split Disabled 布局 (#27)
- 添加了 Interpolate Variables (#28)
- 为 Numbers 添加了 Min 和 Max (#29)
- 添加了 Unit Label (#31)
- 添加了 Header Parameters (#32)
- 添加了 Password Input (#33)
- 订阅了 Refresh Events (#30)
1.0.0 (2022-05-11)
功能/改进
- 基于 Volkov Labs Panel template 1.5.0 的首次发布