Gestão de Indicadores/Métricas com Grafana

AGRADEÇA AO AUTOR COMPARTILHE!

Um dos principais motivos pelo qual tentamos padronizar a gestão de serviços como um todo é para gerar indicadores relevantes que nos apoiarão na análise, planejamento e tomada de decisão. Pessoal, sem um controle eficaz, a tendência é que trabalhemos em meio ao caos, com mais pressão, sem priorização, sem expectativas e com decisões sendo tomadas de forma ineficientes e/ou intempestivas.

Por isso é essencial termos um acompanhamento gerencial e em tempo real do nosso dia a dia e, para isso, apresento-lhes o Grafana.

Você já ouviu falar sobre Grafana?

Se ainda não, vamos lá. O Grafana é uma excelente solução gratuita e de código aberto para gestão de métricas e indicadores. Ela vem ganhando cada vez mais adoção, especialmente no universo de software livre, pois sua estrutura leve e multi data source oferece uma flexibilidade incrível para quem a utiliza, possuindo integração com diversas soluções famosas, como Zabbix, MySQL, GLPI, PostgreSQL, GoogleCalendar, InfluxDB e muito mais. A lista é significativa.

Outra grande vantagem do Grafana é sua comunidade rica e participativa. Seus desenvolvedores fazem questão de documentar bastante coisa, além de serem bem ativos nos fóruns juntamente com milhares de usuários ao redor do mundo. É muito fácil conseguir ajuda quando nos deparamos com algum problema.

A instalação é muito simples e pode ser feita em diversas distribuições Linux, em Docker, no Windows ou em MAC/OS. Confere aqui os manuais oficiais de instalação em todas essas plataformas.

O objetivo deste artigo é dar um overview da ferramenta para vocês terem uma ideia de seu potencial, entretanto, não entrarei nos detalhes, pois estou preparando um material completo que estará disponível em breve, indo desde a instalação, configuração até a criação de relatórios e dashboards personalizados. Confere só um dashboard simples que montei a partir da integração com MySQL e GLPI: DASHBOARD DE CHAMADOS  –  GRAFANA

Vamos, então, conferir o que é preciso para começar a trabalhar com o Grafana.

As integrações do Grafana são em forma de plugin. Para instalar, basta seguir o manual clicando aqui. Certifique-se que os plugins desejados estão instalados clicando em Configuration > Plugins

0_K2f8RBd-uF2rCwdo

0__SD_wF66U5nOzFbH

0_Su2I8Kr0S--NuUQV

0_KXl9am2vcylWk8LI

Após a instalação do plugin, é necessário configurar os data sources (fonte de dados). Para isso, devemos ir em Configuration > Data Sources. Segue orientações para instalação dos plugins que vamos demonstrar: MySQL, GLPI e ZABBIX.

0_7UjD4QGH8MzrYjJA

Com os data sources configurados, já podemos começar a criar os dashboards imediatamente! Clique em Create > Dashboard, depois em Add Panel e por fim em Graph

0_9-WUqrVDqp-70-bQ

0_eWNUoVyLhs3x79n7

Para criar um gráfico de evolução histórica de chamados abertos mês a mês (imagem acima), poderíamos utilizar o plugin MySQL, selecionando o data source configurado e inserindo a query que montamos, conforme abaixo:

0_RQPrFmu-Z6v5eSHi

0_5Hc4I4LOLuyoYWzt

Para criar um indicador de chamados que excederam o prazo do SLA (imagem ao lado), poderíamos utilizar um gráfico do tipo Singlestat e o data source proveniente do plugin do GLPI. Uma vantagem desse plugin é o fato de não ser necessário escrever consultas em SQL, pois ele utiliza a URL que o próprio GLPI gera quando montamos um filtro dentro da ferramenta.

0_i8NOjQNvRisBQ2Pr

Ao fazer esse filtro, o GLPI gerou a URL no próprio navegador, a qual posso copiar e colar dentro do Grafana e automaticamente o gráfico será gerado.

0_VRjdRxulyCw7qXbb

0_ZJSRFuPco-D5xR8A

Para criar um gráfico de utilização em disco (conforme acima), podemos utilizar o plugin do Zabbix, selecionando o data source e escolhendo variáveis desejadas.

0_L-wMhv2jCx05txtk

Pessoal, o mais legal do Grafana é a possibilidade de reunir indicadores de várias fontes diferentes. Os três exemplos que demonstrei acima poderiam estar num só dashboard. As possibilidades que isso oferece para a gestão são imensas, pois um gerente de um centro de suporte poderia, por exemplo, ter um dashboard em uma televisão que demonstrasse as principais métricas do atendimento via telefone, chat, ferramenta de chamados e ferramenta de monitoramento. Tudo numa só visão!

Como expliquei anteriormente, a intenção era apenas dar uma visão geral, além do que mostrei, o Grafana possui diversas outras funcionalidades, como:

  • Filtros;
  • Alertas automáticos com base em gatilhos;
  • Variáveis;
  • Links entre dashboards ou url externa;
  • Criação de times;
  • Permissionamento;
  • Anotações;
  • Manipulação de eixos e legendas;
  • Playlist;
  • Versionamento de paineis;
  • Autenticação LDAP;
  • Exportação e importação em JSON;
  • e muito mais!

Estou preparando um material detalhado sobre o Grafana voltado para gestão de serviços. 

Fiquem ligados! E até lá, não deixem de conferir esse artigo onde apresento diversas soluções gratuitas para gestão de serviços.

Por hoje é só.
Um abraço e até a próxima!

AGRADEÇA AO AUTOR COMPARTILHE!

Kedson Alves

Mais artigos deste autor »

Especialista ITSM e entusiasta de TI | Há anos escutando vários “dá só uma olhadinha no meu computador”.

Outros artigos no meu blog:
https://medium.com/simplificando-ti


10 Comentários

AvatarRicardo Albuquerque
1

Muito bom! Não acredite em frases do tipo: “Se software livre é tão bom, por que é gratuito?” Quem diz isso parece não entender o movimento.

Kedson AlvesKedson Alves Autor do Post
4

@Eric, desculpe a demora.
No CentOS fica em /etc/httpd/conf.

Você também pode pesquisar com o find a partir da raiz:
“find / -iname ‘httpd.conf'”

AvatarJefferson
5

Primeiramente parabéns pelo artigo.

Estamos iniciando o uso do grafana com GLPI, porém estamos tendo alguns problemas com a falta de documentação de como usar e configurar de forma apropriada cada tipo de dashboard.
Outro problema que estamos enfrentando é quando, ao usar o valor de determinado campo, por exemplo, técnico responsável, o grafana exibe o nome do tecnico juntamento com a tag html retornado pela API.
Teve este tipo de problema? Caso sim, como contornar?

Kedson AlvesKedson Alves Autor do Post
6

Olá Jefferson.
Realmente há muita carência de documentação referente a indicadores.

Quanto ao dado trazido pela API, já enfrentei esse problema sim, mas devido as diversas limitações da API, resolvi construir tudo através de queries com um datasource mysql.

Tenho bastante consultas que podem te ajudar. Me aciona no e-mail que te envio.

AvatarDavi
7

Parabéns pelo artigo.

Já tenho o grafana coletando dados do Zabbix e realmente ele cria diversos dashboard personalizados.
Mas estou num impasse que é sobre criação de relatórios e agendamento de envio automaticamente.
Saberiam me dizer uma opção para isso?

Desde já muito obrigado.

AvatarMarcio Fornari
8

Olá, acabei caindo nesse seu artigo. Show de bola!

Eu estou querendo saber se é possível eu monitorar outras métricas com o GRAFANA, como por exemplo uma evolução de vendas por Vendedor. Como no primeiro gráfico os Meses seriam os Vendedores e o valor o quanto eles venderam.
Percebi que o Eixo X do Grafana é sempre em formato de TIME, será que teria a possibilidade de mudar isso? Estava pensando em criar uma copia desse plugin e tentar alterar o código fonte para o que eu preciso, porém to com pressentimento que não vai ser fácil.

AvatarRobson Oliveira
9

Kedson, no Grafana é possivel criar algum tipo de mensagem (tipo Running with no issues,etc…) ou imagem que apareceria quando não há alertas vindo do Zabbix?

Kedson AlvesKedson Alves Autor do Post
10

@Davi, não existe nada nativo com essa funcionalidade no Grafana, mas algumas pessoas já conseguiram fazer, por exemplo: https://www.bujarra.com/generando-informes-con-grafana-y-programar-su-envio/?lang=en

@Marcio, depende de qual a fonte de dados a ser utilizada. Se for um banco mysql sem problemas, se for outro banco, você vai precisar verificar se existe plugin de conexão com esse banco, ou utilizar uma ferramenta para tratar os dados e entregar ao grafana, como o Elastic Search.
Editar o código realmente é a opçao mais trabalhosa.

@Robson, é possível fazer algo assim no painel Singlestat, na aba Value Mappings, onde você pode colocar uma msg de texto com base no valor retornado.
Exemplo: null -> NO ISSUES

Deixe seu comentário

Seu endereço de e-mail não será publicado. Campos com * são obrigatórios!

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">