Graph shows timeoffset

  • What Grafana version and what operating system are you using?
    I am using Grafana v8.3.4, running in a container. The host is Fedora 34. On this host the command “date” gives “Mon Apr 4 21:08:28 CEST 2022”
    In the container, the command “date” gives: “Mon Apr 4 19:08:28 UTC 2022”, so the container is running on UTC time.
    The time in the panel (and browser time) is on CEST (UTC + 2h)In my Mariadb (running in another container), there is a table with datetime and values. The datetime is in UTC.

  • What are you trying to achieve?
    A graph with the local browser time (CEST, UTC + 2h) times and values. The times must be converted from UTC to local browser time.

  • How are you trying to achieve it?
    In the panel, I have the query:

SELECT
  datetime AS "time",
  value
FROM logNibeUplink
WHERE
  $__timeFilter(datetime)
ORDER BY datetime
  • What happened?
    The panel shows a graph, but the last two hours are not shown. Also the values are shown at a time offset, two hours too late.

  • What did you expect to happen?
    A graph with the times converted from UTC to the local time

  • Can you copy/paste the configuration(s) that you are having problems with
    The grafana.ini file is over 1000 lines. Below is the output of “grep -i time grafana.ini”

;temp_data_lifetime = 24h                                                                                                                                                  
# Sets the maximum time using a duration format (5s/5m/5ms) before timing out read of an incoming request and closing idle connections.                                    
# `0` means there is no timeout for reading the request.                                                                                                                   
;read_timeout = 0                                                                                                                                                          
# Connection Max Lifetime default is 14400 (means 14400 seconds or 4 hours)                                                                                                
;conn_max_lifetime = 14400                                                                                                                                                 
# Set to true to log the sql calls and execution times.                                                                                                                    
# This setting also applies to core backend HTTP data sources where query requests use an HTTP client with timeout set.                                                    
;timeout = 30                                                                                                                                                              
;dialTimeout = 10                                                                                                                                                          
;tls_handshake_timeout_seconds = 10                                                                                                                                        
;expect_continue_timeout_seconds = 1                                                                                                                                       
;idle_conn_timeout_seconds = 90                                                                                                                                            
# The duration in time a user invitation remains valid before expiring. This setting should be expressed as a duration. Examples: 6h (hours), 2d (days), 1w (week). Default
;user_invite_max_lifetime_duration = 24h                                                                                                                                   
# The maximum lifetime (duration) an authenticated user can be inactive before being required to login at next visit. Default is 7 days (7d). This setting should be expres
;login_maximum_inactive_lifetime_duration =                                                                                                                                
# The maximum lifetime (duration) an authenticated user can be logged in since login time before being required to login. Default is 30 days (30d). This setting should be 
;login_maximum_lifetime_duration =                                                                                                                                         
# Max requests accepted per short interval of time for Grafana backend log ingestion endpoint (/log).                                                                      
# Time to wait for an instance to send a notification via the Alertmanager. In HA, each Grafana instance will                                                              
# be assigned a position (e.g. 0, 1). We then multiply this position with the timeout to indicate how long should                                                          
;ha_peer_timeout = "15s"                                                                                                                                                   
# Alert evaluation timeout when fetching data from the datasource. This option has a legacy version in the `[alerting]` section that takes precedence.                     
# The timeout string is a possibly signed sequence of decimal numbers, followed by a unit suffix (ms, s, m, h, d), e.g. 30s or 1m.                                         
;evaluation_timeout = 30s                                                                                                                                                  
# Number of times we'll attempt to evaluate an alert rule before giving up on that evaluation. This option has a legacy version in the `[alerting]` section that takes prec
# Default setting for new alert rules. Defaults to categorize error and timeouts as alerting. (alerting, keep_state)                                                       
;error_or_timeout = alerting                                                                                                                                               
# Alert notifications can include images, but rendering many images at the same time can overload the server                                                               
# Default setting for alert calculation timeout. Default value is 30                                                                                                       
;evaluation_timeout_seconds = 30                                                                                                                                           
# Default setting for alert notification timeout. Default value is 30                                                                                                      
;notification_timeout_seconds = 30                                                                                                                                         
# Concurrent render request limit affects when the /render HTTP endpoint is used. Rendering many images at the same time can overload the server,                          
# Instruct headless browser instance to use a default timezone when not provided by Grafana, e.g. when rendering panel image of alert.                                     
# timezone IDs. Fallbacks to TZ environment variable if not set.                                                                                                           
;rendering_timezone =                                                                                                                                                      
# When rendering_mode = clustered, you can specify the duration a rendering request can take before it will time out. Default is `30` seconds.               
;rendering_clustering_timeout =                                                                                                                              
# Default system date format used in time range picker and other places where full time is displayed                                                         
# Default timezone for user preferences. Options are 'browser' for the browser local timezone or a timezone name from IANA Time Zone database, e.g. 'UTC' or 
;default_timezone = browser                                                                                                                                  
  • Did you receive any errors in the Grafana UI or in related logs? If so, please tell us exactly what they were.
    The directory /var/log/grafana is empty, so no logs here. In grafana.ini the following line is given
[log]
;mode = console file                                                                                                                                                       
;level = info                                                                                                                                                              
  • Did you follow any online instructions? If so, what is the URL?
    I did not use a specific online instruction.

Question: What can I do the get the graph in CEST time?
Or am I doing something as a NewBie?

are you using the official mysql datasource plugin? Are you writing a raw query or using the query builder?

I am using the datasource plugin, that ships with the installation. I used the query builer and the raw query. The query is:

SELECT
datetime AS “time”,
DegreeMin
FROM logNibeUplink
WHERE
$__timeFilter(datetime)
ORDER BY datetime