Grafana 怎么设置全局时间范围默认值为最近 1 小时?

文章导读
先说结论:Grafana 原生不支持一键“全局”覆盖所有 Dashboard 的时间范围,默认时间范围主要针对单个 Dashboard 或组织级别生效。
📋 目录
  1. 核心概念与误区澄清
  2. 方法一:单个 Dashboard 设置(推荐存量修改)
  3. 方法二:组织偏好设置(接近全局默认)
  4. 方法三:Provisioning 批量配置(适合自动化运维)
  5. 验证与排查
  6. 参考文档
A A

先说结论:Grafana 原生不支持一键“全局”覆盖所有 Dashboard 的时间范围,默认时间范围主要针对单个 Dashboard 或组织级别生效。

  • 单个 Dashboard:保存时勾选“保存当前时间范围”。
  • 组织级别:在组织偏好中设置默认值,影响该组织下新用户或未保存设置的面板。
  • 批量管理:通过 Provisioning 配置文件批量部署。
  • 注意:修改 JSON 前务必备份,避免配置丢失。

核心概念与误区澄清

很多用户希望设置一个“全局开关”让所有 Dashboard 默认显示最近 1 小时,但 Grafana 的设计逻辑是Dashboard 独立配置优先。即使设置了组织默认值,已保存特定时间范围的 Dashboard 仍会使用其自身保存的设置。因此,实现“全局”效果通常有两种路径:

  1. 存量面板:逐个修改 Dashboard 设置。
  2. 增量/新建:通过组织偏好或 Provisioning 设定默认值。

方法一:单个 Dashboard 设置(推荐存量修改)

这是最常用且生效最确定的方式,适合已存在的监控面板。

  1. 进入需要修改的 Dashboard 页面。
  2. 在右上角时间选择器中,手动选择 Last 1 hour(最近 1 小时)。
  3. 点击 Dashboard 标题旁边的保存图标(或按 Ctrl+S)。
  4. 关键步骤:在保存弹窗中,务必勾选 Save current time range as dashboard default(将当前时间范围保存为面板默认值)。
  5. 点击 Save 完成设置。

备选:JSON 修改法

  1. 点击 Dashboard 设置图标(齿轮),选择 JSON Model
  2. 复制全部内容到本地文本编辑器备份
  3. 找到 time 对象,修改为:
"time": {
  "from": "now-1h",
  "to": "now"
}
  1. 点击 Save 保存修改。

方法二:组织偏好设置(接近全局默认)

此设置会影响该组织下新建Dashboard 或未指定时间范围的场景,无法强制覆盖已保存特定时间的旧面板。

  1. 点击左侧菜单 Configuration(齿轮图标)。
  2. 选择 Organization preferences
  3. 找到 Default time range 选项。
  4. 设置为 Last 1 hour 或其他所需范围。
  5. 点击页面底部的 Update 保存。

方法三:Provisioning 批量配置(适合自动化运维)

如果你通过代码管理 Dashboard,可以在 provisioning 的 JSON 文件中定义默认时间。

Grafana 怎么设置全局时间范围默认值为最近 1 小时?

在 dashboard 配置文件中确保包含 time 字段:

{
  "dashboard": {
    "title": "My Dashboard",
    "time": {
      "from": "now-1h",
      "to": "now"
    },
    ...
  }
}

通过重启 Grafana 或触发 provisioning 重载生效。

验证与排查

验证步骤:

  1. 刷新浏览器页面,观察右上角时间选择器是否显示 Last 1 hour
  2. 尝试新建一个 Dashboard,检查是否自动应用了组织默认时间。
  3. 使用无痕模式或不同账号登录,确认设置是否对该组织下其他用户生效。

常见坑与排查:

  • 忘记勾选保存选项:界面保存时若未勾选 Save current time range as dashboard default,设置不会生效。
  • JSON 语法错误:手动修改 JSON 时,时间单位必须小写(h 而非 H),且需符合 JSON 格式,否则导入失败。
  • 时区不一致:若数据缺失,检查 Dashboard 设置中的 Timezone 是否为 Browser 或统一时区,服务器与本地时间偏差可能导致查询范围为空。
  • 权限不足:确保当前用户拥有 Dashboard 的 EditSave 权限,否则无法保存更改。

参考文档