Not sure if this will help. I have been trying to get Grafana to match my Postgres data. It was confusing. My project is new so that I was able to go back and change the code to get it to work.
My understanding and what I did…
I changed Grafana timezone setting to ‘Local browser time’. I was ‘inserting’ data as type TIMESTAMP (using Go, but that doesn’t matter as we are interested in how Postgres stores and retrieves data).
Postgres stores date/time data as UTC, but displays it via SELECT as the local time zone. I suspect Grafana knows it is stored as UTC and thus uses that value (but doesn’t assume that the graphic display timezone setting should correspond.)
So…I changed the the insertion type to TIMEZONETZ, which stores the time zone (local) and voila, Grafana now displays the data as my local timezone. It still shows the data/time in the query as UTC but displays correctly for all levels (5mins,1hour, 2days and so on…).
Hope this saves someone some time!
ps. I realize that if you are not collecting the data yourself, or cannot change tons of data this may not be a viable solution for you. But at the outset if you realize this…