2015-11-05 64 views
2

我有一项任务,我必须从Windows安全日志文件中提取诸如“审计失败”&“审计成功”等信息,并计算每个例外的结果。总尝试次数,成功次数,失败次数和最常见的事件ID。我将.csv保存到我的桌面上以获取信息,但我不确定如何获得每个信息的运行总数。到目前为止,我只导入了csv文件。在Powershell中计算日志结果​​

我迄今为止代码:

$FileName=import-csv -Path "C:\Users\Robert\Desktop\Audit Count.csv" 
$FileName | Select-Object | Format-List -Property "Keywords", "Event ID" 

$AuditSuccess = "Audit Success" 
$AuditSuccess.Count 
+0

我尝试这样做,它也给我一些有用的信息。我将尝试针对我需要的信息(例如成功,失败等)进行量身定制。我假设我需要为我正在查找的数据设置一些变量。这是一个开始,谢谢本杰明! $ FileName |选择对象| Group-Object -Property“事件ID” – RobMore

+0

出于某种原因,我不能指定我的搜索来提供特定项目的计数,例如审计失败 – RobMore

+0

对'Get-EventLog'使用'-EntryType'参数。 –

回答

3

尝试Group-Object。这里是财产EntryType分组获得成功和失败的计数的例子:

Get-EventLog -LogName Security | Group-Object -Property EntryType 

Count Name      Group           
----- ----      -----           
21911 FailureAudit    {System.Diagnostics.EventLogEntry, System.Di... 
14132 SuccessAudit    {System.Diagnostics.EventLogEntry, System.Di... 
+0

我试图重复你在上面做的事情,看看我是否在Get_EventLog后得到相同的结果--LogName安全| Group-Object -Property EntryType和我得到Get-EventLog:不允许请求的注册表访问。你碰巧知道这意味着什么? – RobMore

+1

这可能意味着您需要以管理员身份运行PowerShell,因为标准用户无权访问安全日志。 – TheMadTechnician