如何在 IIS 6.0 的 ASP.NET 鎖死時產生傾印檔案

文章翻譯 文章翻譯
文章編號: 828222 - 檢視此文章適用的產品。

本文內容

全部展開 | 全部摺疊

在此頁中

結論

當您在 Internet Information Services (IIS) 6.0 上遇到鎖死狀況時,應用程式事件記錄檔中會出現類似以下的錯誤:

事件類型:警告
事件來源:W3SVC-WP
事件類別目錄:無
事件識別碼:2262
日期:7/29/2003
時間:12:08:58 PM
使用者:N/A
電腦:ComputerName
描述:ISAPI 'C:\WINNT\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll' 因為下列原因而報告為狀況不良:「偵測到死結」。

系統事件記錄檔中會出現類似以下的錯誤:

事件類型:警告
事件來源:W3SVC
事件類別目錄:無
事件識別碼:1013
日期:7/29/2003
時間:12:09:34 PM
使用者:N/A
電腦:ComputerName
描述:伺服應用程式集區 'DefaultAppPool' 處理序在關閉期間花費過長的時間。處理序識別碼為 '2756'。

如需詳細資訊,請參閱「說明及支援中心」,網址是:http://support.microsoft.com

產生用於診斷的傾印檔案

IIS 6.0 有一項稱為「遺棄工作者處理序」的新功能。此項功能可以讓您先行檢查排定要回收的處理序,才終止該處理序。「遺棄工作者處理序」能夠用來在處理序中附加偵錯工具,並且產生用於研究調查的傾印檔案。

注意 以 IIS 5.0 相容性模式執行處理序時,不會啟用此項功能。

建立要在工作者處理序遭遺棄時所執行的批次檔

  1. 啟動記事本
  2. 將下列程式碼貼到 [記事本] 中:
    @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_%TIMESTAMP%.dmp
    set LOG=c:\log.txt
    set COMMAND=c:\debuggers\cdb.exe -c ".dump /o /mhf %FILENAME%;q" -p %1
    
    echo %COMMAND% > %LOG%
    %COMMAND%
    
    endlocal
  3. 將檔案儲存為 FileName.cmd。此範例將檔案命名為 action.cmd,但是,您可以依據需要自行命名檔案。
注意 您可能必須修改偵錯工具的位置,以及想要產生結果傾印檔案的位置。

設定遺棄工作者處理序設定

  1. 在命令提示字元中輸入下列命令,然後按下 ENTER:
    cd \Inetpub\adminscripts
  2. 如果要啟用「遺棄工作者處理序」功能,請在命令提示字元輸入下列命令:
    adsutil.vbs SET W3SVC/AppPools/DefaultAppPool/OrphanWorkerProcess TRUE
    
  3. 在命令提示字元中,設定要在排定回收處理序時所執行的可執行檔。例如,在本例中請使用<建立要在工作者處理序遭遺棄時所執行的批次檔>一節所建立的批次檔:
    adsutil.vbs SET W3SVC/AppPools/DefaultAppPool/OrphanActionExe "c:\action.cmd"
    adsutil.vbs SET W3SVC/AppPools/DefaultAppPool/OrphanActionParams "%1%" 
    
注意 請確定 OrphanActionExe 選項是指向<建立要在工作者處理序遭遺棄時所執行的批次檔>一節中所建立的批次檔位置,並且確定 W3wp.exe 處理序的身分識別具有這個檔案的讀取和使用權限。

?考

如需詳細資訊,請造訪下列 Microsoft Developer Network (MSDN) 網站:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iissdk/html/92d00c5e-e588-4151-be84-42561e9229f0.asp

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iissdk/html/0efabfb5-c5dd-4a47-a52c-18335ffe1c45.asp

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iissdk/html/c70603f3-7fc2-4e0b-b177-77b92c8fb38b.asp

屬性

文章編號: 828222 - 上次校閱: 2007年12月4日 - 版次: 7.2
這篇文章中的資訊適用於:
  • Microsoft ASP.NET 1.1
  • Microsoft Internet Information Services 6.0
關鍵字:?
kbhowtomaster kbdebug KB828222
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

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