前回csvを作成しましたので、それを取り込んで各要素でどんな出現があるかを確認していきます。データに含まれている要素は、以下になります。
'UserName',
'EventID',
'LogHost',
'LogonID',
'DomainName',
'ParentProcessName',
'ParentProcessID',
'ProcessName',
'Time',
'ProcessID',
'LogonTypeDescription',
'AuthenticationPackage',
'LogonType',
'Source',
'Status',
'ServiceName',
'Destination',
'SubjectUserName',
'SubjectLogonID',
'SubjectDomainName',
'FailureReason'
この中で、取得までに時間がかかる項目は、'LogonID'、'ProcessID'、'Time'で実際やってみると24時間以上かかります。(UserName(19314s) -> 5.3時間、ProcessName(4836s) -> 1.3時間, ParentProcessID(24928s) -> 6.9時間とかかりますが、24時間以内ですので、なんとかなりそうです。)
今回はこの'LogonID'、'ProcessID'、'Time'項目以外の項目を、各要素に出現する項目の出現回数を取得して、どのような内容になっているかを確認していきます。今回は単純計算なので並列計算は使いません。
ソースコード(HostEvents_Element_Count.py)
これを実行すると、以下のようなデータが得られます。(wls_day-07_EventID.csv)
これを算出することで、どんなイベントがどのような頻度ででているかがわかります。まずは基本分析として、各要素のイベント出現回数を調査しました。