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á logo ali!
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 ao longo do caminho 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 acompanhar, 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 outros pacotes que já instalou até agora em sua máquina.
1. Abra 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 da seguinte forma:
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 Sysdig.
linux-headers-$(uname -r)
– Fornece os arquivos necessários para construir módulos do kernel para o seu kernel em execução. Este pacote é necessário porque você pode instalar o Sysdig em uma máquina com um kernel padrão mais antigo.

3. Execute o comando curl
abaixo para adicionar a chave pública do GPG do Sysdig (GPG
) ao seu chaveiro APT. Este comando permite que você verifique se os pacotes baixados do sysdig.com são válidos e não foram modificados.
Você receberá uma mensagem OK depois de ter adicionado 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. Execute o comando apt update
abaixo para baixar os novos repositórios do Sysdig e atualizar as listas de pacotes do APT com as informações dos novos repositórios.
Você verá a seguinte saída se o seu APT estiver configurado corretamente.

6. Após 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 o seu pacote Sysdig está atualizado. A versão também oferece insights sobre se o lançamento do Sysdig impacta o 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 verificar o que está acontecendo com o seu sistema. A ferramenta de linha de comando do 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 os comandos do Sysdig com privilégios de
sudo
para ter acesso total ao seu sistema. Algumas atividades do sistema podem ser ocultadas por padrão para usuários não root, como a saída do sistema de arquivos /proc. O Sysdig também requer privilégios desudo
para carregar automaticamente os símbolos do kernel necessários para fazer 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
costuma ficar corrompido após uma instalação nova do Sysdig. O Sysdig depende do pacote ncurses-term
para suportar sua interface de usuário ncurses.

Se o comando csysdig
for bem-sucedido, você receberá 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 do csysdig parece semelhante a ferramentas de monitoramento como htop.

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

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

Monitorando Processos que Consomem CPU com Chisels do Sysdig
O Sysdig oferece vários chisels prontos para uso que coletam automaticamente informações específicas do sistema, conhecidos como “chisels.” Talvez você esteja experimentando um desempenho lento em sua CPU. Se for o caso, executar o comando sysdig
com um chisel especificado permite que você veja quais aplicativos/processos estão consumindo mais uso da sua CPU.
1. Execute o comando sysdig
abaixo para listar os chisels 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 esse 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
nesta demonstração.
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.
Depois de entender a funcionalidade de um cinzel, você 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 estão usando a maior quantidade de CPU em seu sistema.
O Sysdig captura os 10 processos que consomem mais CPU nesta demonstração e os imprime no terminal. O processo mais intensivo em CPU será exibido no topo (sshd), tornando-os mais fáceis de encontrar.

Monitoramento de 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 poderosa opção de filtragem que usa a sintaxe Lua para que você possa realizar uma filtragem eficaz.
Suponha que você esteja procurando apenas por processos sshd que contribuam 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 usa muita CPU.
Como mostrado abaixo, você obterá uma saída filtrada sem obter nenhuma outra informação de processo.
A partir da saída, você pode obter mais informações sobre o processo sshd, como por que o processo sshd usa mais CPU ou memória, etc.

Criando um arquivo de log de eventos para monitorar seu sistema
Uma das ótimas funcionalidades que o Sysdig oferece são os arquivos de log de eventos, que permitem que você colete todas as informações sobre o que seu aplicativo ou o sistema fazem para análise posterior. Os arquivos de log de eventos fornecem as mesmas informações que as saídas da 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
no seu diretório pessoal, onde o Sysdig armazenará todas as saídas do sysdig
.
A extensão do arquivo .scap permite salvar fluxos de dados em forma de texto legível.
2. Em seguida, execute o comando ls -la
abaixo para listar todos os arquivos no diretório de trabalho.
Você vai notar um novo arquivo chamado ata.scap no seu diretório home, 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ê se conecta ao seu servidor via SSH.

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