读书人

应用dumpel定期导出windows系统日志

发布时间: 2012-09-25 09:55:58 作者: rapoo

使用dumpel定期导出windows系统日志

?

?

1、windows系统日志的存储:

windows的系统日志存储在C:\WINDOWS\system32\config目录,文件后缀为evt。

2、导出工具:

使用dumpel.exe可以导出windows的系统日志。

dumpel.exe可以去微软官网下载,地址:http://support.microsoft.com/kb/927229。

下载后的dumpel.exe是个安装文件,安装完后可以在安装目录找到一个dumpel.exe,我们需要的是安装后的dumpel.exe。

3、导出脚本:

直接使用dumpel.exe不容易实现自动定期导出系统日志。所以需要编写个脚本。脚本内容:

?

//获得YYYYMMDD格式的当前时间function getCurYYYYMMDD(){var today = new Date();var year = today.getYear();var month = today.getMonth() + 1;if (month < 10) {month = "0" + month;}var date = today.getDay();if (date < 10){date = "0" + date;}return year + "" + month + "" + date;}//补齐目录结尾的'\'function makeDir(str){if (str.charAt(str.length - 1) != '\\'){return str + "\\";}else{return str;}}//处理命令行参数var args = WScript.Arguments;var days = 1;var path = "";var exepath = "";for (i = 0; i < args.length; i++){var a = args(i);if (a.indexOf("-e") == 0){exepath = a.substring(2, a.length);}if (a.indexOf("-p") == 0){path = a.substring(2, a.length);}if (a.indexOf("-d") == 0){days = a.substring(2, a.length);}}//补齐目录结尾的'\'exepath = makeDir(exepath);path = makeDir(path);//获取当前时间var YYYYMMDD = getCurYYYYMMDD();var YYYYMM = YYYYMMDD.substring(0, 6);//判断按月存放的目录是否存在var fso = new ActiveXObject("Scripting.FileSystemObject");if (fso.FolderExists(path + YYYYMM) != true){fso.CreateFolder(path + YYYYMM);}//执行程序,导出日志var ws = new ActiveXObject("WScript.shell");ws.run(exepath + "dumpel.exe /l" + " application" + " /f " + path + YYYYMM + "\\" + YYYYMMDD + "_app.xls /d " + days, 0, true);ws.run(exepath + "dumpel.exe /l" + " security" + " /f " + path + YYYYMM + "\\" + YYYYMMDD + "_sec.xls /d " + days, 0, true);ws.run(exepath + "dumpel.exe /l" + " system" + " /f " + path + YYYYMM + "\\" + YYYYMMDD + "_sys.xls /d " + days, 0, true);
?

?

4、执行命令:

cscript bak_win_log.js -eD:\Desktop -pD:\winlog -d7

使用windows的任务计划执行该命令就实现了定期导出。

*dumpel的安装目录里的dumpel_d.htm是使用说明。

?

读书人网 >windows

热点推荐