優秀的 NT 網管會定期備份系統日誌 (System、Application、Security 等) 以利事後稽核、入侵偵測、效能分析。手工「另存為」不僅繁瑣,輸出格式難以處理。利用 Resource Kit 工具 dumpel.exe 搭配 WSH (VBScript/JScript) 實現排程自動化、格式化 HTML 輸出、可選列印,大幅提升運維效率。
dumpel -f <檔案> [-s \\伺服器] [-l <日誌類型>] [-m <事件來源>] [-e <事件ID列表>] [-r] [-t] [-d <天數>]
-f:輸出檔案路徑/名稱。-s:遠端伺服器 (需 Admin 權限)。-l:日誌類型 — system、application、security、DNS、File Replication 等。-m:依事件來源篩選。-e:依事件 ID 篩選。-d N:僅匯出最近 N 天記錄。範例:dumpel -f security.log -s \\server01 -l security
\\server (可為本機)。\\data\backup。<電腦名>_<月份>_<日期>_<日誌類型>.html (中文月份/星期)。at 指令每日 00:00 自動執行。// 月份/星期中文化對照表
var month = ["", "一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"];
var days = ["", "星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
// 取得電腦名、日期、路徑
var ws = WScript.CreateObject("WScript.Shell");
var compName = ws.ExpandEnvironmentStrings("%COMPUTERNAME%");
var netDrive = "\\\\data\\backup";
var today = new Date();
var logDay = today.getDate();
var logMonth = today.getMonth() + 1; // JScript 月份 0-based
var logTypes = ["system", "application", "security"];
// 1. 呼叫 dumpel 匯出原始 .log
for (var i=0; i
logreport.js 與 dumpel.exe 放置同一目錄 (如 C:\AdminScripts\)。\\data\backup 產生三份 .htm。at \\server /every:M,T,W,Th,F,S,Su 0:00 "C:\AdminScripts\logreport.js"
或使用圖形化「排程工作」精靈設定每日觸發。
以不到百行腳本替代繁瑣手工操作,實現日誌「日備份、中文化、HTML 格式化、可列印、可排程」。這正是系統管理員從「手工操作者」進化為「自動化工程師」的關鍵一步。VBScript/JScript 配合 WMI/ADSI/COM 元件,更可構建完整自動化運維生態系。