Logging com kubectl logs
Acesse e analise diretamente os logs dos contêineres no seu cluster Kubernetes usando o kubectl.
Logging com kubectl logs é uma aula grátis de Kubernetes Basics no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Kubernetes Basics, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kubernetes Basics inclui 4 aulas no total.
Por que os registros são importantes no Kubernetes
No Kubernetes, entender o que seus aplicativos estão fazendo é essencial. Os registros são como o diário do seu aplicativo, registrando eventos, erros e atualizações de status.
Eles são essenciais para:
- Depuração: identificar precisamente os problemas quando algo dá errado.
- Monitoramento: acompanhar a integridade e o desempenho do aplicativo.
- Auditoria: rastrear ações e alterações ao longo do tempo.
Registros de contêineres explicados
Quando um aplicativo em contêiner é executado, normalmente grava a saída nos fluxos de saída padrão (stdout) e erro padrão (stderr). O Kubernetes coleta esses fluxos para cada contêiner.
Esses fluxos ficam disponíveis por meio da API do Kubernetes, permitindo acessá-los facilmente sem precisar usar SSH para acessar os nós ou contêineres individuais.
Introdução a kubectl logs
O comando kubectl logs é sua principal ferramenta para acessar os registros dos contêineres em execução nos seus Pods do Kubernetes. Ele é simples e oferece várias opções avançadas.
O uso mais básico consiste simplesmente em especificar o nome do Pod que você deseja inspecionar.
Criando um Pod que gera registros
Para ver kubectl logs em ação, imagine que implantamos um Pod simples que envia continuamente mensagens para sua saída padrão. Isso simulará um aplicativo real gerando registros.
Veja o YAML de um Pod desse tipo (você o aplicaria usando kubectl apply -f):
apiVersion: v1
kind: Pod
metadata:
name: busybox-logger
spec:
containers:
- name: busybox-container
image: busybox
command: ['sh', '-c', 'while true; do echo "$(date) - Hello from BusyBox"; sleep 5; done']
restartPolicy: AlwaysVisualizando registros básicos de Pods
Depois que seu Pod busybox-logger estiver em execução (verifique com kubectl get pods), você poderá buscar seus registros usando o comando básico kubectl logs.
Isso mostrará todas as entradas de registro gravadas até aquele momento.
kubectl logs busybox-loggerTransmitindo registros em tempo real
Para depuração ao vivo, geralmente é necessário ver os registros à medida que são gerados, de forma semelhante ao comando tail -f no Linux. A opção -f ou --follow faz exatamente isso.
Ela transmite continuamente novas entradas de registro do contêiner.
kubectl logs -f busybox-loggerRegistros de contêineres anteriores
Se um contêiner dentro do seu Pod falhar e for reiniciado, kubectl logs mostrará, por padrão, os registros da instância *atual* em execução.
Para visualizar os registros de uma instância *anterior* e encerrada de um contêiner, use a opção --previous ou -p. Isso é extremamente útil para depurar por que um contêiner pode ter falhado.
kubectl logs -p busybox-loggerRegistros de contêineres específicos
Alguns Pods podem executar vários contêineres (por exemplo, uma aplicação principal e um auxiliar para registro ou monitoramento). Se o seu Pod tiver mais de um contêiner, você deverá especificar quais registros deseja ver usando a opção -c ou --container.
kubectl logs my-multi-container-pod -c my-sidecar-containerFiltrando e limitando a saída dos registros
Às vezes, você precisa apenas de uma parte específica dos registros ou somente das entradas mais recentes. É possível combinar kubectl logs com comandos padrão do Linux ou usar opções integradas:
- Filtrar com
grep: Envie a saída paragreppara encontrar palavras-chave específicas. - Limitar linhas com
--tail: Exiba apenas as últimas N linhas dos registros.
kubectl logs busybox-logger | grep "Hello"
kubectl logs busybox-logger --tail=5Desafio sobre comandos de registros
Você tem um Pod chamado my-app-pod com dois contêineres: frontend e backend. O contêiner backend falhou e foi reiniciado recentemente. Você deseja visualizar os registros da instância anterior do contêiner backend.
Resumo sobre registros e depuração
Parabéns! Você aprendeu os fundamentos para acessar e analisar registros de contêineres usando kubectl logs. Esse comando poderoso é indispensável para entender e solucionar problemas nas suas aplicações em execução no Kubernetes.
Principais comandos a serem lembrados:
kubectl logs <pod-name>: Busca básica de registros.kubectl logs -f <pod-name>: Transmite registros em tempo real.kubectl logs -p <pod-name>: Visualiza registros de uma instância anterior do contêiner.kubectl logs -c <container> <pod-name>: Direciona a busca para os registros de um contêiner específico.
Perguntas Frequentes
A aula “Logging com kubectl logs” é grátis?
Sim — o texto completo de “Logging com kubectl logs” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Kubernetes Basics, atualize para CoddyKit PRO. O curso de Kubernetes Basics inclui 4 aulas no total.
O que vou aprender em “Logging com kubectl logs”?
Acesse e analise diretamente os logs dos contêineres no seu cluster Kubernetes usando o kubectl. Você pratica Kubernetes Basics com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Kubernetes Basics?
Nenhuma experiência prévia é necessária. Kubernetes Basics no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Logging com kubectl logs”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Kubernetes Basics?
Sim. Cada aula de Kubernetes Basics inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Logging com kubectl logs
- Métricas com Prometheus e Grafana
- Verificações de integridade: sondas de atividade e prontidão
- Rastreamento Distribuído e Eventos