Opentelemetria é uma estrutura de observabilidade de código aberto que fornece uma maneira consistente de coletar, processar e exportar dados de telemetria de seus aplicativos e infraestrutura. Opentelemetria fornece uma maneira única e neutra de fornecedor de instrumentar seus aplicativos e infraestrutura, para que você possa obter insights sobre o desempenho, o comportamento e o uso deles.
Os dados de telemetria incluem métricas, traços e logs. Opentelemetria fornece APIs e bibliotecas para gerar e coletar consistentemente esses dados. Os dados coletados podem ser exportados para vários sistemas de back -end, como ferramentas de monitoramento e análise de log, para análise e visualização adicionais.
Opentelemetria foi projetado para ser extensível, permitindo que você o use para instrumentar uma ampla gama de tecnologias, incluindo aplicativos nativos da nuvem, microsserviços e aplicativos monolíticos tradicionais. Ele também suporta várias linguagens de programação, incluindo Go, Java, .Rede, nó.JS, Python e Ruby.
Este tutorial ensinará como instalar e monitorar seus pipelines Jenkins usando o plug -in Opentelemetry.
Configuração do cluster
Sinta -se à vontade para usar sua configuração Jenkins. Para este tutorial, no entanto, temos:
Instalando o plug -in OpenteleMetry
A primeira etapa é instalar e configurar o plugin Opentelemetry no controlador Jenkins.
Comece fazendo login no seu controlador e navegando no painel Jenkins.
Em seguida, navegue para gerenciar Jenkins -> Gerenciar plugins -> Plugins disponíveis e pesquisar “Opentelemetry.”
Depois de instalado, reinicie Jenkins para aplicar as alterações no plug -in Opentelemetry.
Configuração do projeto de amostra
Para este projeto, usaremos o Opentelemetria e Jaegar como o back -end. O link para o projeto de amostra é mostrado abaixo:
https: // github.com/abertura-telemetria/opentelemetria-coletor-contrrib/árvore/main/exemplos/demonstração
Clone o repositório:
clone git https: // github.com/abertura aberta/opentelemetria-coletor-controle.git
Navegue até o diretório de exemplos/demônios:
$ cd opentelemeletry-coletor-contrrib/exemplos/demonstração
Execute os aplicativos do cliente e do servidor usando o comando Docker-Compose como:
$ Docker -Compõe Up -d
Depois que os contêineres estão em funcionamento, podemos configurar o plugin Opentelemetry no controlador Jenkins.
Configure o plug -in OpenteleMetry
Abra o painel Jenkins e navegue para gerenciar o Jenkins -> Configurar System.
Role para baixo até chegar à seção Opentelemetria.
Volte ao seu terminal e execute o comando:
$ Docker-Compor PS
O comando deve listar todos os contêineres em execução e os detalhes dos aplicativos disponíveis.
No nosso caso, estamos interessados no aplicativo em execução na porta 4317 e em qual porta é mapeada do lado de fora.
No nosso caso, podemos ver que a porta 4317 no contêiner é mapeada para a porta 4317 no sistema host.
Em seguida, volte para o painel Jenkins e defina o terminal OTLP como http: // localhost: 4317
Substitua a porta 4317 pelo número da porta que você buscou no comando anterior.
Na seção de autenticação, selecione “Sem autenticação.”
Na seção de visualização, selecione “Adicionar back -end de observabilidade da visualização” e escolha “Jaeger.
Digite o URL da base Jaeger no recipiente do Docker como:
http: //: Jaeger_ip>
Em nosso exemplo, o Jeager Port 16686 é mapeado para a porta 16686 no sistema host. Portanto, o endereço Jaeger será:
http: // localhost: 16686
Configurando um trabalho de Jenkins
O próximo passo é configurar um Jenkins Job Jenkins. No painel Jenkins, selecione “Novo item.”Dê ao trabalho um novo nome e selecione o tipo de trabalho como um pipeline.
Na seção de pipeline, adicione um script de tubulação, conforme fornecido abaixo:
Pipeline
agente qualquer
ferramentas
maven "maven"
estágios
Stage ('Build')
passos
git "https: // github.com/jenkins-docs/simples-Java-Maven-App.git "
sh 'mvn -b -dskiptests pacote limpo'
Stage ('Test')
passos
SH 'MVN TEST'
publicar
sempre
Junit 'Target/SureFire-Reports/*.xml '
Stage ('Deliver')
passos
sh './jenkins/scripts/entrega.sh '
O oleoduto acima exige que você tenha o MAVEN configurado no seu controlador Jenkins. Verifique nosso tutorial sobre como configurar o Maven em Jenkins para saber mais.
Por fim, clique em Salvar para salvar o script do pipeline e clique em "Build Now" para iniciar o processo de construção.
Para visualizar o processo de construção em Jaeger, clique em "Veja o pipeline com Jaeger".
Isso deve abrir a interface do usuário Jaeger com os detalhes da compilação do pipeline.
Conclusão
Este tutorial abordou a instalação e o uso do plug -in Opentelemetry Jenkins e visualizando as compilações do pipeline usando o Jeager.