如何解决在 Invoke-AzVMRunCommand 错误时将 Azure 自动化状态设置为失败以触发警报
我在自动化操作手册中运行了此命令。有时,如果 VM 停止,命令会出错。基于此错误,我希望自动化运行手册的状态为“失败”而不是已完成。但是运行手册给出了“已完成”状态。因此,我无法使用 Azure Monitor(检查状态值)触发警报。对于 Runbook 中的此类错误,如何将 Runbook 状态设置为“失败”?
$result=Invoke-AzvmrunCommand -ResourceGroupName $VMResourceGroupName -VMName $VMname -ScriptPath ScriptToRun.ps1 -CommandId 'RunPowerShellScript'
if ($result.value.Message -like '*error*')
{
throw $result.value.Message
}
解决方法
您可以参考THIS类似的问题。答案也应该适用于您的情况。
,你的代码是错误的。这是正确的。抛出将使 Runbook 失败。有问题的代码在 VM 中运行时适用(不是通过自动化运行手册)
$result=Invoke-AzVMRunCommand -ResourceGroupName $VMResourceGroupName -VMName $VMname -ScriptPath ScriptToRun.ps1 -CommandId 'RunPowerShellScript'
if(!$result)
{
throw "Error Occured"
}
else
{
Write-Output "Succeeded"
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。