2010-12-16 33 views
1

我正在使用Python從遠程計算機檢索Windows事件日誌。如何使用python從遠程機器讀取windows eventlog?

我嘗試下面的代碼:

import win32evtlog 

server = 'aRemoteMachineHostName' 
logtype = 'System' 
hand = win32evtlog.OpenEventLog(server,logtype) 
total = win32evtlog.GetNumberOfEventLogRecords(hand) 

,我得到一個拒絕訪問錯誤。

然後我嘗試使用win32security.Logon在我訪問eventlog之前進行身份驗證。 但我發現在win32security.Logon文件中,它說API只支持本地登錄。

所以,我有點卡在這裏。我想知道Python是否可以進行遠程Windows登錄? 任何提示或提示將有所幫助。

謝謝。

+0

愚蠢的問題,也許,但本地計算機和遠程計算機上的同一個Windows域? – 2010-12-16 07:53:32

+0

這兩臺機器被認爲是兩個獨立的機器,不一定在同一個域中,它們可能只是獨立的服務器或域計算機。但是給出了目標服務器的憑證。 – Bingo 2010-12-17 05:20:04

回答

0

可能會更容易使用SNMP

+0

嗯,但我不能要求每個應用程序發送snmp ... – Bingo 2010-12-16 05:35:36

+0

你可能能夠通過SNMP暴露事件日誌 – user406905 2010-12-16 18:43:16

+0

是的,如果設置了本地代理,我們可以做很多事情與事件日誌。我可能更喜歡沒有本地代理商,在使用該功能之前,設置起來會更容易一些。 – Bingo 2010-12-17 05:18:31

0

只要誰正在執行該腳本有憑據連接並讀取事件日誌的用戶來說,這ActiveState的食譜對我的作品。我在幾種不同的情況下使用它。

ActiveState WinEvtLogViewer

相關問題