Olá, pessoal!
Eu fui encarregado em integrar as informações do nosso Google Analytics em um dashboard do Grafana para que a área de negócios tivesse uma visualização mais prática e amigável de alguns dados. Essa foi uma tarefa que nunca tinha feito, então, comecei a ler artigos e documentações de ambos Grafana e Google Analytics para tentar encontrar uma solução. Encontrada a solução, compartilho com vocês como consegui fazer. Vamos lá!
Primeiro ponto… O Grafana não tem um data source para conectar diretamente com o Analytics. Nas documentações da Google é explicado como podemos usar a API para criar a conexão e exportar os dados. Com isso, eu pensei: “alguém já teve ter criado essa integração”.
Sim, com certeza.
Encontrei o que precisava em “stitchdata.com”. Eles desenvolveram uma série de integrações e com um plano grátis que encaixou no que eu precisava. Criei uma integração com a origem “Google Analytics”, escolhi as métricas que queria e como destino escolhi um PostgreSQL (por que o Grafana já tem um datasource nativo para ele).
![Integração no "stitchdata.com"](http://s.profissionaisti.com.br/wp-content/uploads/2019/05/google-analytics-grafana-1.png)
Integração no “stitchdata.com”
![Sincronização](http://s.profissionaisti.com.br/wp-content/uploads/2019/05/google-analytics-grafana-2.png)
Sincronização
![Escolhendo o destino](http://s.profissionaisti.com.br/wp-content/uploads/2019/05/google-analytics-grafana-3.png)
Escolhendo o destino
Próximo passo foi configurar o data source no Grafana:
![Data source no Grafana](http://s.profissionaisti.com.br/wp-content/uploads/2019/05/google-analytics-grafana-4.png)
Data source no Grafana
Finalmente, criei o dahsboard com as informações sincronizadas:
![Dashboard](http://s.profissionaisti.com.br/wp-content/uploads/2019/05/google-analytics-grafana-5.png)
Dashboard
É importante conferir a documentação do Google Analytics e também o “Query Explorer” para verificar as combinações de métricas e dimensões válidas:.
No meu cenário o que escolhi foi:
The total number of users for the requested time period. UI Name: Users
dimensions = ga:day metrics = ga:1dayUsers
The session index for a user. UI Name: Count of sessions
dimensions = ga:sessionCount metrics = ga:sessions
The average duration (in seconds) of users’ sessions. UI Name: Avg. Session Duration
dimensions = ga:sessionDurationBucket metrics = ga:avgSessionDuration
Dois pontos importantes:
- stitchdata: O tempo mínimo de integração é de 30 minutes.
- Google Analytics: o timestamp dos dados exportados no banco é sempre em UTC.
No geral, eu achei essa solução muito prática e útil para prover a informação do Google Analytics no Grafana.
Espero que tenha sido útil. Qualquer dúvida ou complemento, deixe seu comment abaixo!