CodeGym /Cursos /Docker SELF /Ferramentas integradas de monitoramento

Ferramentas integradas de monitoramento

Docker SELF
Nível 21 , Lição 2
Disponível

3.1 Comando docker stats

O Docker fornece uma ferramenta integrada para monitorar containers em tempo real — o comando docker stats. Esse comando permite acompanhar as principais métricas de desempenho dos containers, como uso de CPU, memória, rede e disco. Bora ver como usar o docker stats pra entender o estado e desempenho dos seus containers.

O comando docker stats fornece estatísticas dinâmicas sobre o funcionamento dos containers em tempo real. Ele exibe as seguintes métricas pra cada container:

  • CPU %: porcentagem de uso da CPU pelo container.
  • MEM USAGE / LIMIT: uso de memória do container e o limite configurado.
  • MEM %: porcentagem de uso de memória pelo container.
  • NET I/O: tráfego de rede (entrada e saída).
  • BLOCK I/O: quantidade de operações de entrada/saída no disco.
  • PIDS: número de processos rodando dentro do container.

Uso básico do comando docker stats

Rodar o comando docker stats sem parâmetros exibe as métricas pra todos os containers em execução:

Terminal


docker stats 

Exemplo de saída do comando docker stats:

Terminal


CONTAINER ID   NAME                CPU %     MEM USAGE / LIMIT     MEM %     NET I/O           BLOCK I/O         PIDS
d9b100f2f636   my_nginx            0.07%     1.24MiB / 1.952GiB    0.06%     1.68kB / 0B       0B / 12.3MB       2
fa3f3f3f3f3f   my_postgres         2.13%     230.5MiB / 1.952GiB   11.52%    2.12MB / 2.05MB   85.6MB / 45.2MB   10

Monitorando um container específico

Você pode acompanhar as métricas de um container específico, informando o nome ou ID dele:

Terminal


docker stats my_nginx 

3.2 Configurações do comando docker stats

Parâmetros do comando docker stats

O comando docker stats suporta várias opções que permitem personalizar a saída de dados:

  • --all ou -a: mostrar métricas para todos os containers, incluindo os que estão parados.
  • --no-stream: exibir as métricas uma única vez e encerrar a execução do comando.
  • --format: ajustar a saída de dados usando templates.

Exemplo de uso do parâmetro --no-stream

Exibindo métricas uma vez para todos os containers:

Terminal

docker stats --no-stream

Exemplo de uso do parâmetro --format

Saída de dados formatada:

Terminal

docker stats --format "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}"

Exemplo de saída:

Terminal

CONTAINER ID   CPU %     MEM USAGE / LIMIT
d9b100f2f636   0.07%     1.24MiB / 1.952GiB
fa3f3f3f3f3f   2.13%     230.5MiB / 1.952GiB

3.3 Uso prático de docker stats

Exemplo 1: monitoramento da carga no servidor

Você pode usar o docker stats pra monitorar os containers no servidor e identificar os containers com alto consumo de CPU ou memória. Isso vai te ajudar a otimizar o uso dos recursos e melhorar a performance dos aplicativos.

Terminal

docker stats

Exemplo 2: monitoramento de um container específico durante testes

Quando estiver testando novas versões dos aplicativos ou mudando configurações, você pode acompanhar as métricas de um container específico pra garantir que não haja impacto negativo na performance.

Terminal

docker stats my_test_container

Exemplo 3: integração com sistemas de monitoramento

Você pode integrar a saída do docker stats com sistemas de monitoramento externos, usando a opção --format pra criar um formato de saída compatível com sua ferramenta de monitoramento.

Terminal

docker stats --no-stream --format "{{.Container}}: CPU {{.CPUPerc}}, MEM {{.MemUsage}}"

Limitações do comando docker stats

Embora o docker stats forneça métricas úteis em tempo real, ele tem algumas limitações:

  • Métricas limitadas: o comando mostra apenas métricas básicas e não fornece informações detalhadas sobre o estado dos containers.
  • Uso manual: o docker stats é conveniente pra uso manual, mas pra monitoramento automatizado e alertas, é melhor usar ferramentas especializadas como Prometheus e Grafana.
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION