Skip to content

Conversation

gasparbarancelli
Copy link

O modelo de coleta de métricas do Prometheus, baseado em pull, pode não ser a melhor abordagem em cenários onde as aplicações têm um tempo de vida muito curto. Nesses casos, o Prometheus pode não conseguir realizar a coleta (scraping) a tempo de capturar as métricas. Para essas situações, o PushGateway se apresenta como uma solução mais eficaz. Com ele, o JMeter pode enviar as métricas diretamente para o PushGateway utilizando o modelo de push, enquanto o Prometheus realiza a coleta (pull) das métricas a partir do PushGateway.

Este Pull Request introduz novos campos na tela de configuração do Listener, permitindo que o usuário defina se deseja enviar as métricas para o PushGateway. Além disso, é possível configurar o host de destino, o nome do job e o intervalo de envio das métricas. Quando a opção de envio para o PushGateway é habilitada, um scheduler é configurado para enviar as métricas no intervalo especificado e também ao final da execução do teste, garantindo que todas as métricas sejam devidamente enviadas.

Essa implementação é especialmente útil em servidores que executam testes com JMeter, onde a máquina pode ser desligada ou o processo pode ser finalizado logo após a execução dos testes. Nesses casos, o Prometheus não conseguiria realizar o scraping dos últimos resultados. Com esta nova funcionalidade, o plugin envia os dados para o PushGateway assim que os testes são concluídos, além de enviar as métricas em intervalos regulares, garantindo que todas as métricas dos testes estejam disponíveis.

É importante ressaltar que, mesmo com a opção de PushGateway habilitada, o servidor que responde ao endpoint /metrics continuará ativo. Assim, ambas as opções podem coexistir sem conflito.

Esse PR resolve os problemas relatados na issue #23.

Captura de Tela 2025-08-12 às 17 42 34

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants