home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 July / CMCD0704.ISO / Software / Shareware / Comunicatii / jyte / jyte.exe / backupEventLog.py < prev    next >
Text File  |  1999-09-02  |  1KB  |  41 lines

  1.  
  2. # Generate a base file name
  3. import time, os
  4. import win32api
  5. import win32evtlog
  6.  
  7. def BackupClearLog(logType):
  8.     datePrefix = time.strftime("%Y%m%d", time.localtime(time.time()))
  9.     fileExists = 1
  10.     retry = 0
  11.     while fileExists:
  12.         if retry == 0:
  13.             index = ""
  14.         else:
  15.             index = "-%d" % retry
  16.         try:
  17.             fname = os.path.join(win32api.GetTempPath(), "%s%s-%s" % (datePrefix, index, logType) + ".evt")
  18.             os.stat(fname)
  19.         except os.error:
  20.             fileExists = 0
  21.         retry = retry + 1
  22.     # OK - have unique file name.
  23.     try:
  24.         hlog = win32evtlog.OpenEventLog(None, logType)
  25.     except win32evtlogutil.error, details:
  26.         print "Could not open the event log", details
  27.         return
  28.     try:
  29.         if win32evtlog.GetNumberOfEventLogRecords(hlog)==0:
  30.             print "No records in event log %s - not backed up" % logType
  31.             return
  32.         win32evtlog.ClearEventLog(hlog, fname)
  33.         print "Backed up %s log to %s" % (logType, fname)
  34.     finally:
  35.         win32evtlog.CloseEventLog(hlog)
  36.         
  37. if __name__=='__main__':
  38.     BackupClearLog("Application")
  39.     BackupClearLog("System")
  40.     BackupClearLog("Security")
  41.