pgSCV - exportador de métricas para PostgreSQL

Olá a todos. Neste post vou falar sobre o pgSCV - um novo exportador de métricas para PostgreSQL (e não só), porque ele é tão bom e quais problemas ele resolve.





Certamente todos que usam Prometheus e PostgreSQL encontraram postgres_exporter. Este exportador é muito fácil de colocar em funcionamento. Também oferece oportunidades de expansão, com base na sua solicitação, você pode descrever métricas e retirá-las. Se você tem um bom conhecimento de como as estatísticas pós-gres funcionam, pode coletar um número bastante grande de métricas. Mas como você sabe, além das métricas do próprio Postgres, também é desejável coletar métricas do sistema, e se houver serviços auxiliares na infraestrutura, por exemplo, pullers de conexão (pgbouncer, odyssey, etc.), então as métricas devem também ser tirado deles. Acontece que precisamos fornecer mais exportadores.





No pgSCV tentei resolver esses dois problemas.





Solução um. O pgSCV pode obter imediatamente um grande número de métricas do PostgreSQL sem a necessidade de configuração adicional. Na minha opinião, isso facilita muito a tarefa de lançamento inicial . Em vez de perder tempo escrevendo uma configuração personalizada para capturar métricas adicionais, você pode tirá-las da caixa imediatamente. A capacidade de configurar métricas personalizadas também está presente . Surge uma pergunta razoável - e se houver muitas métricas e nem todas forem necessárias? Nesse caso, você pode desativar a coleta de métricas ou limitar a lista de bancos de dados da qual deseja coletar métricas .





Segunda solução. No momento, o pgSCV é capaz de obter métricas do sistema, PostgreSQL e Pgbouncer. Para fazer isso, ele pesquisa automaticamente esses serviços e começa a coletar métricas deles. Obviamente, para coletar métricas de serviços de rede, você precisa de detalhes de conexão. A captura de métricas não se limita aos serviços locais. Se desejar, você pode especificar a coleção de métricas de serviços hospedados em outros nós.





Um caso de uso típico é simplesmente executar o pgSCV. No exemplo abaixo, presume-se que o usuário já foi criado.





curl -O -L https://github.com/weaponry/pgscv/releases/download/v0.5.0/pgscv_0.5.0_linux_amd64.tar.gz
tar xvzf pgscv_0.5.0_linux_amd64.tar.gz
cat << EOF > pgscv.yaml
defaults:
    postgres_username: "monitoring"
    postgres_password: "supersecretpassword"
EOF
./pgscv --config-file pgscv.yaml
      
      



Após o lançamento, você pode abrir um segundo console e usá curl -s 127.0.0.1:9890/metrics



-lo para obter uma lista de métricas.





Observo que o pgSCV foi criado para as necessidades do Armamento (um projeto de monitoramento do PostgreSQL e tudo ao seu redor), agora o pgSCV, na minha opinião, se estabilizou e não tenho vergonha de mostrar isso.





Isso é tudo, obrigado pela atenção! Se você tiver alguma ideia, desejo ou erro, escreva para as discussões ou questões . Finalmente, alguns links:





  • pgSCV no Github





  • wiki pgSCV





  • Começando





  • Colecionadores disponíveis





  • Métricas disponíveis








All Articles