欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

druid在superset中展示的时区问题

程序员文章站 2022-05-24 15:31:50
...

druid在superset中展示的时区问题

superset是一个在BI项目中,展示效果非常好的组件,并且可以与多种组件结合。

博主之前在使用中遇到了点问题,特此记录下来。


问题1

问题描述:现有数据是通过FileBeat+LogStash+Kafka+Druid+SuperSet,这样一个数据流程,使用过logstash的人应该都比较清楚,这个组件是ELK中的一部分,LogStash会在生成这个@timestamp的过程中默认更换时区为0区,Kibana中有默认添加了8个小时,所以最终如果使用ELk是没有任务问题的。但是用Druid ==> SuperSet是没有这个自动添加8个小时的,问题就出现了,比如在superset中选择查看今天的数据的时候,是显示的从八点开始向后的数据,0-8点的数据是没有的。


解决方案:我选择了在Superset的设置文件 config.py中修改 (superset为docker安装,版本为 0.30.0)

注释掉原本的137行,更改为下边这个
DRUID_TZ = tz.tzoffset('GMT+8', 28800)

效果图:现在已经能显示0-8小时的数据!
druid在superset中展示的时区问题

参考自:https://zhuanlan.zhihu.com/p/34847729
注意: 上文操作如果superset的config.py和数据源都更改了,是有坑的,详情见问题2


问题2

问题描述: 经过上边的修改之后在superset中filter时间是没有问题的,但是如果做成折线图(只要是x轴有时间这种图都有问题),又变成从八点开始的了,苦思不得其解,后来想到在superset的界面操作也更改了时区为8,可能是这个原因,果然是!
修改过“时区偏移”如图
druid在superset中展示的时区问题
解决方案

把superset的druid数据源的datesource中的“时区偏移”更改回默认的0 ,即可解决问题。

还原“时区偏移”为默认值,即可
druid在superset中展示的时区问题

解决问题!!

共同踩坑!共同成长!