CodeGym /Cursos /Docker SELF /Trabalhando com logs de containers

Trabalhando com logs de containers

Docker SELF
Nível 11 , Lição 3
Disponível

4.1 Fundamentos do comando docker logs

O comando docker logs é uma ferramenta útil pra monitorar e depurar containers. Com ele, devs e administradores de sistemas conseguem visualizar os logs dos containers, o que ajuda a diagnosticar problemas e analisar o funcionamento das aplicações. Nesta aula, vamos explorar em detalhes como usar o comando docker logs, quais parâmetros estão disponíveis e como gerenciar os logs de maneira eficiente.

O comando docker logs exibe os logs de um container especificado. Esses logs incluem todas as mensagens gravadas pelos processos dentro do container nos fluxos padrão de saída (stdout) e de erros (stderr).

Sintaxe


docker logs [OPTIONS] CONTAINER

Onde:

  • CONTAINER: o nome ou identificador do container cujos logs você quer visualizar.
  • OPTIONS: parâmetros adicionais pra configurar a saída dos logs.

Exemplo de uso básico

Este comando vai exibir todos os logs acumulados do container my_container.

Terminal


docker logs my_container

4.2 Parâmetros do comando docker logs

O comando docker logs tem várias opções que permitem configurar a saída de logs de acordo com as suas necessidades.

1. Visualizar logs em tempo real

Para visualizar logs em tempo real, usa-se a opção -f (follow). Essa opção permite acompanhar as atualizações dos logs assim que aparecem, como no comando tail -f.

Terminal


docker logs -f my_container 

2. Limitar a quantidade de linhas exibidas

Você pode limitar o número de linhas exibidas pelo comando docker logs usando a opção --tail. Isso é útil se você só precisa das últimas linhas do log, em vez de todo o histórico.

Terminal


docker logs --tail 100 my_container 

Este exemplo exibirá apenas as últimas 100 linhas do log do container my_container.

3. Exibir logs a partir de um horário específico

A opção --since permite exibir logs começando de um horário específico. O horário pode ser fornecido no formato de carimbo de tempo (por exemplo, 2023-07-20T15:00:00) ou em formato relativo (como 1h para os logs da última hora).

Terminal


docker logs --since "2023-07-20T15:00:00" my_container 

Ou

Terminal


docker logs --since 1h my_container 

4. Exibir logs até um horário específico

A opção --until permite exibir logs até um horário específico. O formato do horário é o mesmo da opção --since.

Terminal


docker logs --until "2023-07-20T16:00:00" my_container 

Ou

Terminal


docker logs --until 10m my_container 

5. Combinar stdout e stderr

Por padrão, o comando docker logs exibe tanto o fluxo padrão de saída (stdout) quanto o fluxo padrão de erros (stderr). Você pode especificar quais fluxos exibir, usando as opções --stdout e --stderr.

Terminal


docker logs --stdout my_container 

Este exemplo exibirá apenas mensagens do fluxo padrão de saída.

4.3 Exemplos de uso

Exemplo 1: visualizando as últimas linhas de logs e monitorando atualizações

Este exemplo vai mostrar as últimas 50 linhas dos logs do container my_container e monitorar novas entradas em tempo real.

Terminal


docker logs -f --tail 50 my_container 

Exemplo 2: exibindo logs das últimas 24 horas

Este exemplo vai mostrar todos os logs acumulados nas últimas 24 horas para o container my_container.

Terminal


docker logs --since 24h my_container 

Exemplo 3: exibindo logs de um intervalo de tempo específico

Este exemplo vai mostrar os logs registrados no período entre 15:00 e 16:00 do dia 20 de julho de 2023 para o container my_container.

Terminal


docker logs --since "2023-07-20T15:00:00" --until "2023-07-20T16:00:00" my_container 

4.4 Cenários práticos

1. Debug de aplicação

Se a sua aplicação não está funcionando direito ou está "quebrando", revisar os logs pode ajudar a diagnosticar o problema. Usa o comando docker logs pra encontrar erros e avisos nos logs.

Terminal


docker logs my_app_container 

2. Monitoramento de servidor

Pra monitorar o funcionamento do servidor em tempo real, você pode usar o comando docker logs com a opção -f.

Terminal


docker logs -f web_server_container 

Isso permite acompanhar as requisições e respostas do servidor em tempo real.

3. Análise de performance

Se você quiser analisar a performance da aplicação em um período de tempo específico, use os parâmetros --since e --until.

Terminal

        
docker logs --since "2023-07-20T00:00:00" --until "2023-07-20T23:59:59" my_app_container 
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION