O Grafana possui as variáveis globais $__timeFrom() e $__timeTo() que são usadas para passar a data e hora inicial e data e hora fina de consultas.
Porém em algumas situações, essas variáveis passam para o SQL Server valores incorretos. Veja o exemplo abaixo, são 21:08 horas, mas as datas de horas a ficam no futuro, exatamente 3 horas por que estamos no Brasil e Grafana quer compensar -3 horas.
SELECT $__timeFrom() AS DataHoraInicioGrafana , $__timeTo() AS DataHoraFimGrafana
Uma das soluções possíveis para corrigir é esta:
DECLARE @offset INT = DATEDIFF(hour,GETDATE(),GETUTCDATE());
SELECT DATEADD(hour,-@offset,$__timeFrom()) AS DataHoraInicioGrafana,
DATEADD(hour,-@offset,$__timeTo()) AS DataHoraInicioGrafana,
@offset AS offset;
Veja o exemplo abaixo:
Ficou estranho por que está exibindo 3 horas a menos, mas funciona.