Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 9 Próxima »

Introdução

Ter uma visão do desempenho e verificar os problemas que podem ocorrer em tempo real são algumas das vantagens que um sistema de monitoramento oferecem. Prometheus, Zabbix, Nagios, Datadog são exemplos de softwares que realizam monitoramento de aplicações e cada uma delas possui suas funcionalidades e características, cabendo ao usuário escolher a que mais condiz com sua realidade.

Para facilitar o monitoramento de sistemas, o Cronapp desenvolveu o plugin Cronapp APM, que permite exportar métricas da aplicação para serem usadas com o Prometheus. O Cronapp APM foi construído a partir da API Spring Boot Actuator e do mecanismo micrometer-prometeus, para que ele utilize os recursos de monitoramento, auditoria e outras propriedades pertencentes do Spring Boot e que gere os dados no formato que utilizado pelo Prometheus.

Endpoints

Um endpoint nada mais é que a URL, a API do Spring Boot disponibiliza alguns endpoints próprios e também, ela utiliza o endpoint pertencente ao Prometheus, o actuator/prometheus, que exporta no formato que será lido pelo servidor do Prometheus. O formato de utilização do endpoint é geral: actuator/id como, por exemplo, actuator/health, actuator/env.

Saiba mais

A lista com todos os endpoints pertencentes ao Spring boot pode ser acessada nesse link.

Configuração

Para habilitar essa funcionalidade, primeiro precisa adicionar o plugin Cronapp APM.

Adicionar plugin

No menu de sistemas, clique na aba Plugin e selecione adicionar novo plugin. Após avançar, pesquise pelo plugin Cronapp APM, selecione-o e avance a página para finalizar a instalação ao clicar no botão de finalizar.

Figura 1.1.1 - Adicionar novo plugin

Será exibida uma janela informando das alterações causadas pela instalação do plugin ao projeto.

Figura 1.1.2 - Alterações feita pelo plugin no projeto

Permissão de segurança da URL

Após a instalação do plugin, é necessário dar permissão à URL de acesso do plugin (recomenda-se inicialmente configurar a permissão para authenticated), que fica no endereço /actuator.

Figura 1.2 - Definir a permissão de segurança para acessar a página

Métricas exportadas

Com a permissão devidamente configurada, basta rodar o projeto e acessar a URL ENDEREÇO DO PROJETO/actuator onde o endereço do projeto é a URL base disponibilizada para qualquer aplicação Cronapp (Ex.: https://app-15-250-13150.ide.cronapp.io).

Figura 1.3 - Métricas exportadas pelo plugin

Obtendo as métricas no Prometheus

Nessa etapa será mostrado como utilizar as métricas geradas pela API no Prometheus. Primeiramente, faça o download do prometheus e extraia a pasta. Finalizada a extração, abra o arquivo prometheus.yml e transcreva o código abaixo para esse arquivo, de modo que ele esteja da mesma forma que é mostrado na Figura 2.1.

Exemplo do scrape_config para adicionar no arquivo
job_name: 'spring'
    metrics_path: '/actuator/prometheus'
    scheme: 'https'
    static_configs:
      - targets: ['app-15-250-13150.ide.cronapp.io:443']
  • job_name: define um nome para que o Prometheus reconheça 
    • metrics_path: informa o endereço em que as métricas são geradas e ele é fixo, não havendo necessidade de alteração.
    • scheme: protocolo utilizado pela aplicação.
    • static_configs: parâmetro utilizado para configurar os campos estáticos do target.
      • targets: informa o endereço da aplicação e a porta que ela utiliza no formato ['endereço:porta']

Figura 2.1 - Configurando arquivo prometheus.yml

Após, inicie a aplicação do prometheus e abra uma página no navegador com o endereço localhost:9090. Clique em status e vá para a aba targets para visualizar se a aplicação está sendo reconhecida pelo Prometheus.

Figura 2.2 - Targets reconhecidas pelo Prometheus

Agora, clique no menu Graph do Prometheus e escolha uma query para obter os dados que são mostrados em elements, como mostrado na Figura 2.3.

Figura 2.3 - Dados retornados pela query escolhida

Visualizando as métricas em gráficos no Grafana

A plataforma Grafana permite que as métricas disponibilizadas pelos softwares de monitoramento sejam visualizados através de gráficos. Com isso, faça o download do Grafana e instale-o em sua máquina. Após finalizar, abra o link default do Grafana, o localhost:3000, e entre com o usuário e senha padrão (admin/admin).

Ao logar no sistema, clique no ícone de configurações (1 da Figura 3.1) e clique em data sources (2 da Figura 3.1).

Figura 3.1 - Configurações > data sources

Clique em adicionar nova fonte de dados e selecione o Prometheus. No campo url, adicione o endereço do Prometheus (nesse caso, localhost:9090) (Figura 3.2) e salve.

Figura 3.2 - Adicionar endereço do Prometheus

Por fim, crie um dashboard e clique em add query. Copie a query escolhida na página do prometheus no campo metrics.

Figura 3.3 - Adicionar query no campo

Com isso, o gráfico será gerado automaticamente.

Figura 3.4 - Gráfico gerado pela query

Nessa página

  • Sem rótulos