跳到主要内容
版本:dev

Perses 仪表盘(2.0 alpha)

在 应用可观测 → 仪表盘(/observability/dashboards)中使用 HertzBeat 2.0 alpha 的受限 Perses 编辑器和渲染器。仪表盘由当前安装实例共享;有写权限的账户可以修改或删除,访客账户可以查看。

无需单独部署 Perses 服务。面板查询 HertzBeat 已配置的信号存储;保存的文档包含查询定义和布局,不包含复制的结果数据。本 alpha 不接受任意 Perses 插件、外部数据源或 SQL。

创建与查看​

  1. 选择 新建仪表盘,填写名称。
  2. 选择 添加面板,设置类型和查询条件。指标面板需要实际存储的指标名称;链路瀑布图需要实际 Trace ID。
  3. 展开 查询上下文,限定服务、命名空间、环境或其他支持的身份字段。
  4. 选择时间范围,点击 查询 预览已应用的定义。无效定义或无效的显式时间窗会阻止执行。
  5. 点击 保存 持久化文档。取消 丢弃本地草稿且不写入;刷新浏览器也会丢弃未保存的草稿。

选中面板后可编辑标题、类型、查询和布局。描述、ID、默认时长、自动刷新、时区和变量定义位于 仪表盘设置 中。在指标、日志和链路表之间切换类型会保留兼容的查询上下文,并重置类型专属过滤条件。瀑布图使用固定 Trace ID,不继承服务上下文。

可在网格中拖动和调整面板大小,也可用键盘编辑 列、行、宽度、高度 数值。重叠或越界的布局不能保存。窄屏会纵向排列面板以便阅读,不会重写已保存的桌面布局。

每个面板独立加载。重试面板 只重新查询该面板;一个面板取消或失败不会让其他面板变成失败。合法空结果表示查询没有返回匹配数据,权限、存储、查询和渲染错误有各自的提示。截断、受限覆盖和未知覆盖会明确显示;表格中看到的行不一定覆盖整个时间窗。

时间与变量​

共享查询控件为所有面板应用同一个时间窗。默认时长支持 15 分钟、30 分钟、1 小时、6 小时和 24 小时;自动刷新可关闭,或设为 30 秒、1 分钟。固定调查窗在刷新时保持不变;选择预设范围并点击 查询,才切换回滚动时间范围。

变量仅支持 serviceName、serviceNamespace 和 environment,每项可以是文本值或静态选项的单选值。在 仪表盘设置 中设置默认值,再将面板对应的上下文字段填写为完整占位符,例如 ${serviceName}。添加变量不会自动改写已有面板查询。将文本覆盖值设为空只移除相应上下文条件,其他过滤条件仍然生效。

变量修改在点击 查询 后应用。固定链路瀑布图不会随服务变量变化而更换 Trace ID。查询定义不持久化 timeWindow,运行时注入当前共享时间窗。文档保存默认时长和可选时区;调查链接可以携带绝对时间窗及变量覆盖值。

与 Explore 往返​

在已应用且受支持的 Explore 查询 中选择 添加到仪表盘,然后选择已有仪表盘或新建。面板先进入本地草稿,检查后点击 保存 才持久化;取消 不修改原仪表盘。不支持的 Explore 条件会被明确拒绝,不会静默删除。

面板的 打开 Explore 会携带支持的查询条件和固定调查时间窗;返回仪表盘 恢复该视图。聚焦链路转换为固定瀑布图,其原始过滤上下文保留在返回链接中,不会伪装成固定链路上的变量过滤条件。

保存、副本与并发编辑​

编辑仪表盘 更新原文档;复制仪表盘 使用新 ID 创建本地草稿。保存失败会保留输入,同一草稿重试会复用原 ID。

更新和删除需要已读取的版本号。如果另一位操作者已修改文档,冲突会保留本地草稿。使用 重新加载当前版本 查看最新内容,并在丢弃本地草稿前确认。冲突不会授权覆盖别人的版本。

导入、导出与旧记录​

导出文档 下载受支持的标准 Perses JSON。导入仪表盘 接受 JSON 文本或文件,校验完整的受限文档后打开本地草稿。以新 ID 导入副本 可以避免替换已有身份。导入不会自动保存。

下载四面板示例。示例没有嵌入遥测数据。请将 checkout-api、shop 和 production 替换为实际资源值,核对指标名称,并替换占位 Trace ID 后再查看瀑布图。导入示例不会安装插桩或创建服务实体。

不支持的文档和非空旧布局仍可通过 导出原始记录 查看。只有格式可识别、元数据可无损表示的空旧仪表盘才能执行 升级空仪表盘;必须先保存精确的空文档转换,再开始编辑。原始片段保留,不会自动迁移不支持的非空布局。

受支持的文档合同​

范围受支持子集
资源kind: Dashboard;metadata.project: hertzbeat;metadata.name 为 1–75 个字母、数字、_、. 或 -
面板最多 24 个 Panel,每个面板一个查询
可视化插件TimeSeriesChart、LogsTable、TraceTable、TracingGanttChart
查询插件HertzBeatTimeSeriesQuery、HertzBeatLogQuery、HertzBeatTraceQuery;spec.version: 1
布局一个 24 列 Grid;每个面板恰好引用一次;不重叠
变量最多上述三个名称;TextVariable,或使用标准 StaticListVariable 插件的 ListVariable
查询上限时间窗最多 24 小时;指标最多 32 个序列、每序列 1,200 个点;表格查询上限最多 1,000 行
存储与上传紧凑文档 JSON 最多 65,535 个 UTF-8 字节;上传文本最多 256 KiB,允许格式化空白

未知字段和不支持的选项会被拒绝。已接受的文本不会被静默裁剪空白或模板化。占位符只能作为对应受支持上下文字段的完整值,不支持任意插值。

指标操作名称过滤是受支持的指标标签条件。如果 JVM 指标没有匹配的操作标签,空结果是合法状态;这不表示指标 API 一概不支持操作过滤。