0
問題如下:在Windows下有事件日誌的提要。我被IRC問及幫助解決這個問題。我給出了我們達成的解決方案的答案。如何在Windows下擁有Windows日誌事件的提要?
我被這個問題python listen the windows log event
問題如下:在Windows下有事件日誌的提要。我被IRC問及幫助解決這個問題。我給出了我們達成的解決方案的答案。如何在Windows下擁有Windows日誌事件的提要?
我被這個問題python listen the windows log event
解決方案
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import win32evtlog # requires pywin32 pre-installed
import win32event
server = 'localhost' # name of the target computer to get event logs
logtype = 'System' # 'Application' # 'Security'
filehandler = win32evtlog.OpenEventLog(server,logtype)
eventhandler = win32event.CreateEvent(None, 1, 0, "wait")
flags = win32evtlog.EVENTLOG_FORWARDS_READ|win32evtlog.EVENTLOG_SEEK_READ
win32evtlog.NotifyChangeEventLog(filehandler, eventhandler)
cursorlog = win32evtlog.GetNumberOfEventLogRecords(filehandler)
cursorlog+=1
print("Go to : %s" % (cursorlog))
while self.skip == False:
#the timeout delay can be set to 0xFFFFFFF for infinite timeout
result = win32event.WaitForSingleObject(eventhandler, 1)
# Timeout
if not result :
readlog = win32evtlog.ReadEventLog(filehandler, flags, cursorlog)
for event in readlog:
print("%s : [%s] : %s" % (event.TimeGenerated.Format(), event.RecordNumber, event.SourceName))
cursorlog+=len(readlog)
啓發