Command-Line-Interface

自動擷取 poolmon 的輸出

  • February 21, 2012

我正在使用 poolmon 尋找記憶體池洩漏。在知識庫文章中,他們解釋瞭如何使用剪切和粘貼手動擷取輸出。沒有辦法自動化嗎?

由於該工具似乎不支持它,我的想法是執行兩個命令提示符(一個用於分頁池,一個用於非分頁池),並使用一個工具進行自動截圖。如果這是可能的,您會建議使用哪種工具?有沒有一種工具可以在沒有人工干預的情況下從命令提示符中刪除文本?

在版本 5.2.3790.0(來自 W2K3 RTM 支持工具)中,您可以指定“快照”文件:

poolmon -n filename.log

它將分頁和非分頁池條目寫入此文件。

我會使用計劃任務定期執行以下內容:

@echo off
SET POOLMON="C:\Program Files\Support Tools\Poolmon.exe"
SET OUTDIR=C:\WINDOWS\TEMP

SET YEAR=%DATE:~10,4%
SET MONTH=%DATE:~4,2%
SET DAY=%DATE:~7,2%
SET HOUR=%TIME:~0,2%
IF /I %HOUR% LEQ 9 SET HOUR=0%HOUR:~1,1%
SET MINUTE=%TIME:~3,2%
SET SECOND=%TIME:~6,2%
SET ISODATE=%YEAR%-%MONTH%-%DAY%_%HOUR%-%MINUTE%-%SECOND%

%POOLMON% -n %OUTDIR%\poolmon.%ISODATE%.log

將 POOLMON 設置為指向 Poolmon.exe 的路徑,將 OUTDIR 設置為指向您要寫入輸出的任何目錄,您將獲得以下格式的輸出文件:

poolmon.YYYY-MM-DD_HH-MM-SS.log

將該腳本放入計劃任務中,您就可以開展業務了。

引用自:https://serverfault.com/questions/46368