Metabase时区设置的问题


1. 序言

时间字段在Metabase显示的时区,受Metabase本身配置时区、JVM时区和集成数据源时区影响。任何一个地方配置不对,或者三个地方配置的不一致都会导致时间字段显示和配置时区不符。 

2. 配置时区

2.1 Metabase时区配置

Metabase中管理员账号可以配置时区。 如下图所示,在报表时区中选择时区。东八区的时间,Matabase里没有Asia/Shanghai,可以选择Asia/Hong_Kong。

2.2 数据源时区配置

Metabase集成数据源时区需要和Metabase保持一致。比如Metabase集成了ClickHouse,ClickHouse的配置文件config.xml中增加如下时区配置信息。

<timezone>Asia/Hong_Kong</timezone>

2.3 JVM时区配置

Metabase后台运行在JVM之上,JVM的时区可以在Metabase启动时,通过指定环境变量配置。

-e "JAVA_TIMEZONE=Asia/Hong_Kong"

3. 总结与思考

使用Metabase官方镜像部署时,系统默认时区是UTC,JVM默认时区和系统时区一致。Metabase启动时如果不指定JVM时区,报表中时间维度显示的时区就会和配置的不一致,排查时区显示的问题也很容易忽略JVM的时区。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM