Partilhar via


Lixeiras

Um dump é um arquivo que contém um instantâneo do processo no momento em que o dump foi criado e pode ser útil para examinar o estado do seu aplicativo. Os dumps podem ser usados para depurar seu aplicativo .NET quando é difícil anexar um depurador a ele, como ambientes de produção ou CI. O uso de dumps permite capturar o estado do processo problemático e examiná-lo sem ter que parar o aplicativo.

Recolha de lixeiras

Os despejos podem ser coletados de várias maneiras, dependendo da plataforma em que seu aplicativo está sendo executado.

Observação

A recolha de dumps não é suportada em plataformas móveis (Android e iOS). O runtime Mono usado nestas plataformas não suporta a geração de despejo de memória.

Observação

Os despejos podem conter informações confidenciais porque podem conter toda a memória do processo em execução. Trate-os tendo em mente quaisquer restrições de segurança e orientações.

  • Você pode usar variáveis de ambiente para configurar a sua aplicação para coletar um dump em caso de falha.

  • Você pode querer coletar um despejo quando o aplicativo ainda não tiver falhado. Por exemplo, se se quiser examinar o estado de uma aplicação que parece estar num deadlock, configurar as variáveis de ambiente para coletar dumps em caso de crash de programa não será útil porque a aplicação ainda está em execução.

  • dotnet-dump é uma ferramenta de linha de comando simples multiplataforma para recolher um dump. Várias outras ferramentas de depuração, como Visual Studio ou windbg, também têm funcionalidades para a coleta de dump de memória.

  • Se estiveres a executar a tua aplicação em produção ou a estiveres a executar de forma distribuída (vários serviços, réplicas), dotnet-monitor fornece suporte para muitos cenários comuns e investigações de diagnóstico ad-hoc, incluindo a recolha e a exportação de despejos. Ele permite que os lixões sejam coletados remotamente ou com condições de acionamento.

Dica

Para solucionar problemas e perguntas frequentes sobre a recolha de dumps, consulte Dumps: FAQ.

Analise despejos de dados

  • Navegue até Debug Linux dumps para obter informações sobre como analisar dumps coletados no Linux.

  • Navegue até Depurar Despejos do Windows para obter informações sobre como analisar despejos coletados no Windows.

Análise de memória

Você pode executar a análise de memória em seu aplicativo se a memória do aplicativo continuar a crescer, mas não sabe por que isso acontece. O tutorial de depuração de vazamento de memória mostra como depurar um vazamento de memória utilizando as ferramentas da linha de comandos dotnet juntamente com os comandos dotnet-sos dumpheap e gcroot.

A Análise de Memória do Visual Studio pode ser utilizada para diagnosticar uma fuga de memória no Windows.

Ver também

Saiba mais sobre como você pode aproveitar dumps para ajudar a diagnosticar problemas em seu aplicativo .NET.