欢迎光临
我们一直在努力

WINDOWS Event log每日备份Scripts脚本的示例分析

小编给大家分享一下WINDOWS Event log每日备份Scripts脚本的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

一.實作:

首先scripts的組成有以下三個檔案

1.
Dump_eventlog.cmd  –>這支Scripts是把eventlog Dump出來共以全文字檔 txt來存檔

2.
dumpel.exe –>這是一支工具程式,因為如果用windows內建的匯出eventlog功能,匯出來的後綴檔名是.evt,以文字編程工具打開來會是亂碼,一定要用windows的事件檢查器打來看才行,那就太煩人了,所以我們用這支程式加上上一支 scripts就可以匯出後綴檔名為.txt的log檔,要查看就方便多了!

3.
del_eventlog.vbs –>這支是用wsh編程編寫的scripts,功用是清空系統的eventlog記錄,有人要問了,我們不是要備份log嗎為什麼需要這支來刪除呀!

還記得剛才說的嗎?我們是要備份每天的系統Log檔,所以用排程排定在每天的午夜12:59備份系統Log後,就利用這支scripts清空系統裡舊的 log,那樣我們每天備份的eventlog就會是完完整整的一整天,而不是好幾天混雜在一起的log備份!

二.代碼說明

接下來我就要解說代源的寫法囉

1.
Dump_eventlog.cmd  

———————————- 源代碼 ————————————————————

@echo Off

mkdir %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%

@echo ******* start Backup Eventlog ******

dumpel -s 127.0.0.1 -l system -f %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%/system.log

dumpel -s 127.0.0.1 -l application -f %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%/application.log

dumpel -s 127.0.0.1 -l security -f %DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%/security.log

@echo ******* Finish Backup Eventlog ******

star /min del_eventlog.vbs

———————————————————————————————————

說明:

代碼不含上下二條虛線喔!第二行是我們要建立一個以日期為名稱的資料夾

因為windows的date抓取的日期變數會是2005/02/23 星期三"這樣的文字,其內的斜線(/)或減號(-)都是用做命令列的選項符號,這樣的組合可能會造成錯誤。

在此最簡單的方法便是用環境變數的擴充功能了,用%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%,我們就可以抓取以 2006-10-20這種格式的日期,4~6行則是利用dumpel 這支程式把 security 、application 、system 三項log記錄匯出來以txt檔備份到以當天日期命名的資料夾裡,ip我是用本機,請依照自己的需要改成你自己主機的ip,star /min del_eventlog.vbs這行則是在備份完之後清空系統的log記錄,原因,前面我們己經說過了!把上面的源碼copy並存成.bat或.cmd 的檔名就可以了!

2.
del_eventlog.vbs

————————————-源代碼 ———————————————————–

'刪除Evenlog

strComputer= "."

Set objWMIService = GetObject("winmgmts:" _

& "{impersonationLevel=impersonate,(Backup)}!\\" & _

strComputer & "\root\cimv2")

dim mylogs(3)

mylogs(1)="application"

mylogs(2)="system"

mylogs(3)="security"

for Each logs in mylogs

Set colLogFiles=objWMIService.ExecQuery _

("Select * from Win32_NTEventLogFile where LogFileName='"&logs&"'")

For Each objLogfile in colLogFiles

objLogFile.ClearEventLog()

Next

Next

———————————————————————————————————

說明:

代碼不包含上下二條虛線喔!這支是清空系統eventlog的wsh編程 scripts,這裡就不多做介紹了,有興趣可以到微軟的腳本範例網站看看,上面有對wsh的做很多的介紹也有範例檔可下來研究!

以上是“WINDOWS Event log每日备份Scripts脚本的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注云搜网行业资讯频道!

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。