Getting error when runnig this code -- > Exception calling "AcknowledgeAlarm" with "2" argument(s): "The object has already been deleted or has not been completely created"
Connect-VIServer -Server $xxx -Credential $cred | Out-Null;
$alarmMgr = Get-View AlarmManager;
$rootFolder = Get-Folder -Name Datacenters;
$rootFolder.ExtensionData.TriggeredAlarmState.Acknowledged | Where {$_.Acknowledged -like "False"} | ForEach-Object -Process {$alarmMgr.AcknowledgeAlarm($_.Alarm,$_.Entity)};
$AllAlarms = $rootFolder.ExtensionData.TriggeredAlarmState | Select @{N='Alarm';E={(Get-View -Id $_.Alarm -Property Info.Name).Info.Name}},Time,OverallStatus,@{N='Entity';E={(Get-View -Id $_.Entity -Property Name).Name}};
You have Acknowleged at twice.
Try like this
Connect-VIServer -Server $xxx -Credential $cred | Out-Null
$alarmMgr = Get-View AlarmManager
$rootFolder = Get-Folder -Name Datacenters
$rootFolder.ExtensionData.TriggeredAlarmState | Where {-not $_.Acknowledged} |
ForEach-Object -Process {
$alarmMgr.AcknowledgeAlarm($_.Alarm,$_.Entity)
}
$AllAlarms = $rootFolder.ExtensionData.TriggeredAlarmState |
Select @{N='Alarm';E={(Get-View -Id $_.Alarm -Property Info.Name).Info.Name}},
Time,OverallStatus,
@{N='Entity';E={(Get-View -Id $_.Entity -Property Name).Name}}
$AllAlarms
Blog: lucd.info Twitter: @LucD22 Co-author PowerCLI Reference
if the alarms are already acknowledged it gives error.
Exception calling "AcknowledgeAlarm" with "2" argument(s): "The object has already been deleted or has not been completely created"
I changed the While-condition, the code above is updated.
Please try again.
Blog: lucd.info Twitter: @LucD22 Co-author PowerCLI Reference