
Parse Events via PowerShell into table. Ever have need to parse an event, and grab a field from the event description, then perform some action after that?
Here’s some PowerShell that may help you first to create a table, then setup columns, gather data, then parse what you need, and run a command to then output to the table
# Create Table for alerts
$Table = @()
$Table = $null
$Table = New-Object System.Data.DataTable “Failed Hosts List”
$Col1 = New-Object System.Data.DataColumn Host
$Col2 = New-Object System.Data.DataColumn IPAddress
$Table.Columns.Add($Col1)
$Table.Columns.Add($Col2)
$Alert20046 = Get-WinEvent -FilterHashtable @{LogName=’Operations Manager’;
ID=’20046′;}
$Alerts20046 = $Alert20046.Message
$Alerts20046.count
$Alerts20046uniq = $Alerts20046 | sort -uniq
$Alerts20046uniq.count
# $DeniedUniq = $Denied20046 | Sort-Object -Uniq
# $ServersDenied = @()
foreach ( $server in $DeniedUniq)
{
$Name = nslookup $server
foreach ($server in $Name)
{
# Add to Table
# $Name.Split(“:”)[6]
# $Name.Split(“:”)[8]
$row = $Table.NewRow()
$row.Host = $Name.Split(“:”)[6]
$row.IPAddress = $Name.Split(“:”)[8]
$Table.Rows.Add($row)
}
}