O seu sistema Linux é uma excelente plataforma para servidores e desktops. Mas, como qualquer outro sistema complexo, é crucial ter um monitoramento adequado para manter o seu sistema no seu melhor desempenho. Felizmente, Sysdig está ao seu alcance!
Sysdig é uma ferramenta abrangente de monitoramento para Linux que pode monitorar o seu sistema em busca de ameaças, erros, padrões de uso e muito mais. E neste tutorial, você aprenderá a instalar o Sysdig, destacando opções de configuração específicas para melhorar o monitoramento do seu sistema Linux.
Continue lendo e nunca mais perca um ‘alerta’!
Pré-requisitos
Este tutorial será uma demonstração prática. Se deseja seguir junto, certifique-se de ter o seguinte.
- A Linux machine – This tutorial uses Ubuntu 20.04 LTS, but any Linux distributions will work.
- A non-root user with sudo privileges.
Instalando o Sysdig no Linux
A ferramenta de linha de comando Sysdig geralmente está disponível na maioria das distribuições Linux modernas, e você pode instalá-la como qualquer outro pacote que já tenha instalado no seu sistema.
1. Abra o seu terminal e execute o comando apt update
abaixo para garantir que você tenha as últimas atualizações dos repositórios de sua distribuição. Este comando atualiza as listas de pacotes do seu sistema e pode levar alguns minutos para ser concluído.

2. Em seguida, execute o comando apt install
abaixo para baixar (curl
) e instalar
os pacotes necessários para o Sysdig. Este comando também instala alguns módulos adicionais usados posteriormente neste tutorial, conforme a seguir:
gnupg
– O GNU Privacy Guard é uma ferramenta para comunicação segura e armazenamento de dados. Este pacote permite o download da chave GPG pública do Sysdig para verificar a validade dos pacotes do Sysdig.
software-properties-common
– Fornece uma maneira rápida de gerenciar suas fontes de software via ambiente de linha de comando ou GUI. Este pacote permite que você use o comandoadd-apt-repository
para adicionar os repositórios de pacotes do Sysdig.
linux-headers-$(uname -r)
– Fornece os arquivos necessários para construir módulos do kernel para seu kernel em execução. Este pacote é necessário porque você pode instalar o Sysdig em uma máquina com um kernel de estoque mais antigo.

3. Execute o comando curl
abaixo para adicionar a chave pública GPG do Sysdig ao keyring do seu APT. Este comando permite verificar se os pacotes baixados de sysdig.com são válidos e não foram modificados.
Você receberá uma mensagem OK após adicionar com sucesso a chave, como mostrado abaixo.

4. Agora, execute o comando curl
abaixo para baixar silenciosamente (-s
) os repositórios do Sysdig como draios.list
e adicioná-lo ao seu sistema. A extensão .list
informa ao seu APT que o arquivo é uma lista de URLs para repositórios, em vez de apenas uma URL.
5. Rerun the comando apt update
abaixo para baixar os novos repositórios do Sysdig e atualizar as listas de pacotes do seu APT com as informações dos novos repositórios.
Você verá a seguinte saída se o seu APT estiver configurado corretamente.

6. Depois de baixar os repositórios do Sysdig, execute o comando apt install
abaixo para instalar o sysdig
em sua máquina. Este comando baixa e instala o pacote sysdig
e seus pacotes de suporte.

7. Por fim, execute o comando sysdig
abaixo para verificar a versão do Sysdig instalada em sua máquina.
O número da versão ajuda a determinar se seu pacote Sysdig está atualizado. A versão também fornece informações sobre se o lançamento do Sysdig impacta no desempenho do sistema.
Como mostrado abaixo, 0.28.0 é a versão mais recente do sysdig até o momento desta escrita. Seu número de versão pode ser diferente.

Monitorando Sistemas Linux com csysdig
Agora que você tem o Sysdig instalado, você pode usar o Sysdig para analisar o que está acontecendo no seu sistema. A ferramenta de linha de comando Sysdig possui muitas opções que fornecem diferentes visualizações do seu sistema e sua atividade. O exemplo mais básico é o comando csysdig
.
Execute o comando csysdig
sem nenhuma opção para ver o que está acontecendo no seu sistema agora. O comando mostrará a atividade de todos os processos em execução atualmente.
Observe que você deve executar com privilégios de
sudo
para ter acesso total ao seu sistema. Alguma atividade do sistema pode estar oculta por padrão para usuários não root, como a saída do sistema de arquivos /proc. Sysdig também requer privilégios desudo
para carregar automaticamente os símbolos do kernel necessários para muitos de seus truques, como o módulo do kernel sysdig-probe
Se você encontrar o seguinte erro, será necessário reinstalar o pacote ncurses-term
. O pacote ncurses-term
tende a ficar corrompido após uma instalação fresca do Sysdig. Sysdig depende do pacote ncurses-term
para suportar sua interface de usuário ncurses.

Se o comando csysdig
for bem-sucedido, você obterá a seguinte saída organizada em abas.
Description | |
PID | The Process ID that assigned by the Linux kernel. You use PIDs to identify and manage processes. |
PPID | The parent process ID of the process. You use PPID to trace the process back through its parent processes. Together, PID and PPID uniquely identify a process on your system. |
CPU | The percentage of CPU used by the application since it started can be seen on a scale from 0 to 100%, where 100% equals total CPU usage. You use CPU usage to find applications that are hogging system resources. |
USER | The name of the user that started the process. You use USER to find out who is executing a process you are interested in. |
TH | The name of the user that started the process. You use USER to find out who is executing a process you are interested in. |
VIRT | The total amount of virtual memory used by the application. You use VIRT to find applications that are hogging your system’s memory. |
RES | The number of resident memory pages a process has, as mapped to physical memory. You use RES to find applications that are hogging your system’s memory. |
FILE | The disk’s file descriptor used by the application. You use FILE to see which files are being read or written frequently, usually an indication of I/O activity. |
NET | The network socket descriptor used by the application. You use NET to see which network connections are being used by the process, and how much data is being transferred in bytes per second. |
Command | The network socket descriptor used by the application. You use NET to see which network connections are being used by the process, and how much data is being transferred in bytes per second. |
À primeira vista, a interface csysdig parece semelhante a ferramentas de monitoramento como o htop.

Pressione F2 e as guias superiores irão mudar para exibir um novo conjunto de informações organizadas em guias à esquerda, como mostrado abaixo.
O Sysdig chama essas “visualizações” porque são diferentes visualizações do sistema, organizadas pelo tipo de informação que mostram, oferecendo mais contexto. E como essas visualizações são baseadas em scripts LUA, você pode personalizar os scripts para extrair dados diferentes do sistema e alterar a visualização conforme preferir.

Por padrão, os scripts LUA estão localizados no diretório /usr/share/sysdig/chisels, como mostrado abaixo.

Monitorando Processos Consumidores de CPU com Sysdig Chisels
O Sysdig oferece vários cinzéis prontos para uso que coletam automaticamente informações específicas do sistema, conhecidos como “cinzéis“. Talvez você esteja enfrentando lentidão no desempenho de sua CPU. Se for o caso, executar o comando sysdig
com um cinzel especificado permite que você veja quais aplicativos/processos estão consumindo a maior parte do uso da sua CPU.
1. Execute o comando sysdig
abaixo para listar os cinzéis disponíveis.
A captura de tela abaixo mostra apenas alguns cinzéis. Mas você pode encontrar e aprender a lista completa de todos os cinzéis disponíveis na documentação oficial.
Os cinzéis do Sysdig também são scripts LUA. Você pode criar seus próprios cinzéis para monitorar informações específicas do sistema ou implementar sua própria visualização, mas este tópico está além do escopo deste tutorial.

2. Em seguida, execute o comando abaixo para ver as informações detalhadas (-i
) sobre um cinzel específico, como topprocs_cpu
neste demo.
Você pode ver todas as informações sobre o cinzel topprocs_cpu abaixo, incluindo o nome do cinzel, categoria e uma breve descrição do que o cinzel faz.
Neste exemplo, o cinzel topprocs_cpu é categorizado como Uso da CPU e mostra o processo principal definido pelo maior uso de CPU.
Assim que você entender a funcionalidade de um cinzel, pode começar a usar esse cinzel.

3. Execute o comando sysdig
abaixo, especificando o cinzel correto (-c topprocs_cpu
) para encontrar os aplicativos que usam a maior quantidade de CPU em seu sistema.
O Sysdig captura os 10 principais processos que consomem CPU neste demo e os imprime no terminal. O processo mais intensivo em CPU será exibido no topo (sshd), tornando-os mais rápidos de encontrar.

Monitorando Informações do Sistema Filtradas
Em alguns casos, a saída é enorme, tornando difícil filtrar as informações do sistema com base em um cinzel específico. Felizmente, o Sysdig oferece uma opção de filtro poderosa que utiliza a sintaxe Lua para que você possa realizar filtragens eficazes.
Suponha que você esteja procurando apenas por processos sshd que contribuem para o alto uso da CPU. Você pode definir uma expressão de filtro por um PID específico ou nome do processo.
Execute o comando sysdig
abaixo para mostrar apenas o processo sshd
que consome muita CPU.
Como mostrado abaixo, você obterá uma saída filtrada sem obter informações de outros processos.
A partir da saída, você pode obter mais informações sobre o processo sshd, como por que ele usa mais CPU ou memória, e assim por diante.

Criando um Arquivo de Log de Eventos para Monitorar seu Sistema
Uma das ótimas características que o Sysdig oferece são os arquivos de log de eventos, que permitem coletar todas as informações sobre o que sua aplicação ou o sistema fazem para análises posteriores. Os arquivos de log de eventos fornecem as mesmas informações que as saídas de linha de comando nos exemplos anteriores, mas são salvos em um arquivo no disco.
1. Execute o comando abaixo para criar um arquivo (-w
) chamado ata.scap
em seu diretório home, onde o Syslog armazenará todas as saídas do sysdig
.
A extensão de arquivo .scap permite salvar fluxos de dados em formato de texto legível.
2. Em seguida, execute o comando ls -la
abaixo para listar todos os arquivos no diretório de trabalho.
Você notará um novo arquivo chamado ata.scap no seu diretório pessoal, conforme mostrado abaixo.

3. Por fim, execute o comando abaixo para que o Sysdig leia (-r
) o arquivo de log de eventos do Sysdig (ata.scap
) e imprima o comportamento do seu sistema quando você faz SSH no seu servidor.

Conclusão
Neste artigo, você aprendeu como instalar o Sysdig no Ubuntu 20.04 e usar o csysdig para coletar informações sobre o seu sistema, aplicativos e segurança. Você também abordou a criação de um arquivo de log de eventos que permite registrar o comportamento do seu sistema.
Neste ponto, você percebeu que ter o Sysdig instalado no seu sistema fornece ferramentas poderosas. E essas ferramentas ajudam a obter mais insights sobre como o seu sistema, aplicativos e infraestrutura funcionam.
Agora, com esse conhecimento recém-adquirido, que tal aprender a decodificar o tráfego HTTP com o Sysdig? Ou como rastrear gargalos de aplicativos com tracers do Sysdig?