Como gerar um ficheiro de informação de estado quando o ASP.NET deadlocks no IIS 6.0

Traduções de Artigos Traduções de Artigos
Artigo: 828222 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Quando detecta um impasse no Microsoft Internet Information Services (IIS) 6.0, será apresentada uma mensagem semelhante à seguinte no registo de aplicações:

Tipo de evento: aviso
Origem do evento: W3SVC-WP
Categoria do evento: nenhum
ID de evento: 2262
Data: 7/29/2003
Hora: 12: 08: 58 PM
Utilizador: N/d
Computador: ComputerName
Descrição: ISAPI 'C:\WINNT\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll' comunicou como danificado pela seguinte razão: 'Impasse detectado'.

Além disso, será apresentada uma mensagem semelhante à seguinte no registo do sistema:

Tipo de evento: aviso
Origem do evento: W3SVC
Categoria do evento: nenhum
ID de evento: 1013
Data: 7/29/2003
Hora: 12: 09: 34 PM
Utilizador: N/d
Computador: ComputerName
Descrição: Um processo que fornecia serviços ao agrupamento de aplicações 'DefaultAppPool' excedeu os limites de tempo durante a encerrar. Id do processo era '2756'.para obter mais informações, consulte o Centro de suporte de ajuda e em http://support.microsoft.com

.

Gerar ficheiros de informação de diagnóstico

O IIS 6.0 tem uma nova funcionalidade denominada processos de trabalho órfã. Esta funcionalidade permite-lhe inspeccionar um processo que está agendado para ser reciclado antes do processo é terminado. O processo de trabalho órfã pode ser utilizado para anexar um depurador ao processo de e para gerar um ficheiro de informação de estado para investigação.

Nota Esta funcionalidade não está activada quando processos executado no modo de compatibilidade 5.0 do IIS.

Transferir ferramentas de depuração para o Windows

Para transferir ferramentas de depuração para o Windows, visite um dos seguintes Web sites da Microsoft, conforme adequado à sua situação:

Versão de 32 bits do Windows:
http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx
Versão de 64 bits do Windows:
http://www.microsoft.com/whdc/devtools/debugging/install64bit.mspx
Nota Quando instalar o ferramentas de depuração para o Windows, certifique-se de que guarda os ficheiros para o seguinte directório:
C:\Debuggers

Criar um ficheiro batch a executar quando um processo de trabalho é isolado

  1. Inicie o bloco de notas
  2. Colar o seguinte código em Notepad.
    @if "%_echo%"=="" echo off
    setlocal
        set TIMESTAMP=%DATE:~-9%_%TIME%
    set TIMESTAMP=%TIMESTAMP:/=_%
    set TIMESTAMP=%TIMESTAMP::=_%
    set TIMESTAMP=%TIMESTAMP:.=_%
    set TIMESTAMP=%TIMESTAMP: =_%
    set FILENAME=c:\crash_PID_%1_%TIMESTAMP%.dmp
    set LOG=c:\log.txt
    set COMMAND=c:\debuggers\cdb.exe -c ".dump /o /ma %FILENAME%;q" -p %1
    
    echo %COMMAND% > %LOG%
    %COMMAND%
    
    endlocal
  3. Guarde o ficheiro como FileName .cmd. Neste exemplo, estamos irá atribuir nome ao ficheiro Action.cmd. No entanto, poderá nome ficheiro, tal como pretende.
Nota Poderá ter de modificar a localização dos depuradores e a localização onde pretende que o ficheiro de informações de estado resultante a ser gerado.

Configurar as definições de processos de trabalho órfã

  1. Na linha de comandos, escreva o seguinte comando e, em seguida, prima ENTER:
    CD \Inetpub\adminscripts
  2. Para activar a funcionalidade de processos de trabalho órfã, escreva o seguinte comando na linha de comandos:
    adsutil.vbs SET W3SVC/AppPools/DefaultAppPool/OrphanWorkerProcess TRUE
    
  3. Na linha de comandos, defina o executável a ser executado quando um processo está agendado para ser reciclado. Por exemplo, neste caso, utilizar o ficheiro batch que foi criado na secção "Criar uma secção ficheiro para executar quando um trabalho processo é isolado":
    adsutil.vbs SET W3SVC/AppPools/DefaultAppPool/OrphanActionExe "c:\action.cmd"
    adsutil.vbs SET W3SVC/AppPools/DefaultAppPool/OrphanActionParams "%1%" 
    
Nota Certifique-se de que a opção OrphanActionExe aponta para a localização do ficheiro batch que foi criado a secção "Criar um ficheiro batch para executar quando um processo de trabalho é isolado". Certifique-se de que a identidade do processo W3wp.exe tem permissões de ler e executar a este ficheiro também.

Nota Se activar o IIS para depurar os processos de trabalho que são reportados como danificado, certifique-se de que monitorizar estes processos de trabalho disponibilizadas. IIS não remove automaticamente estes processos de trabalho da memória. Se não processam correctamente estes processos de trabalho, muitos processos de trabalho falhados poderão estar em execução no computador. Estes processos de trabalho podem ocupar recursos que são necessárias por outros processos. Tem de terminar estes processos de trabalho rapidamente para libertar esses recursos. Em algumas condições, estes processos de trabalho poderão bloquear o acesso de metabase. Isto provoca problemas com outros processos de trabalho ou com o próprio serviço World Wide Web.

Referências

Para obter mais informações, visite os seguintes Web sites da Microsoft Developer Network (MSDN):
http://msdn2.microsoft.com/en-us/library/ms525365.aspx

http://msdn2.microsoft.com/en-us/library/ms524472.aspx

http://msdn2.microsoft.com/en-us/library/ms525700.aspx
Para obter mais informações sobre como depurar um processo de trabalho é comunicado como danificado, visite o seguinte Web site da Microsoft:
http://technet2.microsoft.com/WindowsServer/en/library/37f477fc-c683-438b-ac11-17ad554fd59a1033.mspx?mfr=true

Propriedades

Artigo: 828222 - Última revisão: 3 de dezembro de 2007 - Revisão: 8.6
A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 1.1
  • Microsoft Internet Information Services 6.0
Palavras-chave: 
kbmt kbdebug kbhowtomaster KB828222 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 828222

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com