You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Grafana中$__from与$__to变量时区问题:期望使用仪表板时间

Grafana 时间变量适配仪表板时区问题解决

问题场景

当前编写的SQL查询WHERE子句为固定时间范围:

year  BETWEEN 2023 AND 2023 
AND month BETWEEN 05   AND 05 
AND day   BETWEEN 10   AND 10 
AND hour  BETWEEN 13   AND 13

尝试替换为Grafana的$__from/$__to变量时,发现$__from:date:HH返回浏览器时区的小时,而$__from:date却返回仪表板时区的日期,希望所有时间格式提取都使用仪表板时区。

解决方法

  • 配置数据源时区
    进入Grafana数据源设置页面,找到「Time zone」选项,选择「Use dashboard time zone」。保存后,所有基于该数据源的时间变量格式(如$__from:date:HH)都会自动使用仪表板设置的时区,无需额外修改变量。

  • 手动指定时区格式
    如果无法修改数据源配置,可以在变量格式中直接指定仪表板对应的时区,格式示例:

    $__from:date:HH:"Asia/Shanghai"
    

    将Asia/Shanghai替换为你的仪表板实际时区标识(如Europe/London)。

  • 基于时间戳转换(适用于SQL数据源)
    利用$__from的毫秒级时间戳,结合数据库的时区转换函数提取对应时区的时间字段。以MySQL为例:

    hour BETWEEN DATE_FORMAT(CONVERT_TZ(FROM_UNIXTIME($__from/1000), 'UTC', 'Asia/Shanghai'), '%H') 
            AND DATE_FORMAT(CONVERT_TZ(FROM_UNIXTIME($__to/1000), 'UTC', 'Asia/Shanghai'), '%H')
    

    这里通过CONVERT_TZ将UTC时间转换为仪表板时区,再用DATE_FORMAT提取小时。

内容的提问来源于stack exchange,提问作者Srki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 13:15:11