30
Oct/093
Oct/093
Report vSphere Alarms with Powershell
Wow, vSphere vCenter Server has a lot of new alarms! Great for monitoring your environment. But a pain when it comes to documenting it. Thank God VMware for the PowerCLI! Just a few lines of code can do the documentation for you.
Here’s how:
# Report vSphere Alarms
# by Hugo Peeters
# www.peetersonline.nl
#Region Variables
$VCServer = "myVCServer"
$Outfile = "D:\scripts\Alarms.txt"
Connect-VIServer $VCServer
$SI = Get-View ServiceInstance
$AM = Get-View $SI.Content.AlarmManager
$myCol = @()
ForEach ($Folder in (Get-Folder))
{
ForEach ($Alarm in ($AM.GetAlarm(($Folder|Get-View).MoRef)))
{
$Alarm = Get-View $Alarm
$myObj = "" | Select Folder, Name, Description, Enabled, Summary
$myObj.Folder = $Folder.Name
$myObj.Name = $Alarm.Info.Name
$myObj.Description = $Alarm.Info.Description
$myObj.Enabled = $Alarm.Info.Enabled
$myObj.Summary = $Alarm.Info.Expression.Expression | Out-String
$myObj
$myCol += $myObj
}
}
$myCol | Where {$_.Enabled} | Out-File $Outfile
ii $Outfile
16
Oct/081
Oct/081
Some Advice on Creating Powershell Scripts (Part 2)
Part two in Some Advice on Creating Powershell Scripts
Now that you have found all sort of interesting properties, you might feel the urge to modify one or two. After all, creating slick overviews is cool, but bricking your entire infrastructure with one script is … well, you get the idea.