Os métodos dependerão do tipo do problema.
Em geral, " Como fazer perguntas de maneira inteligente " de Eric S. Raymond e Rick Moen às vezes é um conselho útil para se concentrar no problema e verificar se você pensou em partes importantes do problema.
Sua primeira fonte de informação durante a depuração são os arquivos de registro gravados pelo seu sistema / aplicativo. O lugar comum para eles é o seu terminal ou um arquivo em /var/log/
. Muitos aplicativos suportam diferentes tipos de loglevels que você deve aumentar se não conseguir encontrar nenhuma mensagem utilizável. Frequentemente, há uma opção -v
verbose para obter mais mensagens.
Ainda nada utilizável? Verifique seus arquivos de configuração, permissões dos arquivos necessários pelo aplicativo e talvez você precise alterar a configuração do seu systemlogger, por exemplo /etc/syslog-ng.conf
.
Se você tiver uma mensagem de erro, uma pesquisa no Google geralmente levará a mensagens no painel de mensagens ou postagens da usenet que discutem os problemas por trás dela. É provável que você encontre uma solução lá. Uma lista de discussão de usuários do projeto, quadros de mensagens e canais de IRC também podem ser muito úteis.
Às vezes, os aplicativos falham sem nenhuma mensagem. Uma ótima ferramenta para descobrir o fluxo do aplicativo, além de ler e modificar o código, é strace
.
Esta ferramenta irá rastrear chamadas e sinais do sistema. Quando erros são capturados pelo aplicativo, você ainda pode descobrir problemas no systrace.
Outra abordagem seria depurar o aplicativo com gdb
. Você deve ser um usuário avançado e saber o que fazer para usar isso.