vbscript to backup eventlogs with error handle

Great for for getting all Windows related scripts.

vbscript to backup eventlogs with error handle

Postby Praveen » Thu Dec 24, 2009 9:56 pm

This vbscript backups the event logs of list of the servers when it exceeds the mentioned size with error handling. It writes the error on log files. you can schedule the event log clear report to your mail through blat.
Code: Select all
'##########Script created by Praveen Kumar C ############
'########## visit www.kannade.com/tech/ for more details#
on error resume next
Set objNetwork = CreateObject("Wscript.Network")
Set ObjFso = CreateObject("Scripting.FileSystemObject")
Set ObjFile = ObjFso.OpenTextFile("./servers.txt",1) 'input list of servers
'sReportname = "./EventlogBackupThane.txt"
Set ObjFile1 = ObjFso.OpenTextFile("./EventlogBackup.txt",2) 'create a blank text file
objFile1.Writeline  "Event log files Backed up"
Do Until Objfile.AtEndOfStream
strComputer = objfile.ReadLine
thisday = Right(Year(Date),2) & Right("0" & Month(Date),2) & Right("0" & Day(Date),2)
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate, (Backup, Security)}!\\" _
        & strComputer & "\root\cimv2")
If Err.Number <> 0 Then
objFile1.Writeline Err.Number & "  -  1 error found"
Err.Clear
End If
Set colLogFiles = objWMIService.ExecQuery _
    ("Select * from Win32_NTEventLogFile")

For Each objLogfile in colLogFiles
If Not objFSO.FolderExists("\\" & strComputer & "\c$\EventLogs") Then 
objFso.CreateFolder("\\" & strComputer & "\c$\EventLogs")
end if
    If objLogFile.FileSize > 293601280 Then
       strBackupLog = objLogFile.BackupEventLog _
           ("c:\EventLogs\" & objLogFile. LogFileName & "_" & strComputer & "_" & thisday & ".evt")
           objFile1.Writeline vbNewLine & objLogFile.logFileName & "_" & strComputer & "_" & thisday & ".evt"
           ObjFso.CopyFile "\\" & strComputer & "\c$\EventLogs\*.evt" , "\\DestinationofEventfileLocation 'Mention the destination
           objfso.DeleteFile "\\" & strComputer & "\c$\EventLogs\*.evt"
       objLogFile.ClearEventLog()
else
objFile1.Writeline  thisday & " " & strComputer & "  " & objLogFile.LogFileName  & "   Event Log not exceeded the mentioned size"
    End If
Next
Loop

User avatar
Praveen
Site Admin
 
Posts: 84
Joined: Sat Apr 25, 2009 2:21 pm

Return to Windows Scripting/WMI/VBScript

Who is online

Users browsing this forum: No registered users and 0 guests

cron