azure 如何查看在Az.Automations下运行的Runbook的名称?

bttbmeg0  于 2023-11-21  发布在  其他
关注(0)|答案(2)|浏览(132)

我想发送一个通知discord关于powershell runbook结果与webrequest在我的runbook下azure自动化。
因为我想在所有Runbook下应用它,所以我想在消息中使用Runbook名称,这样我就可以看到通知来自哪个Runbook,有没有方法可以提取我的代码工作的Runbook名称?
我试

$runbookName = $MyInvocation.BoundParameters['Name']

字符串
但我没有成功

bt1cpqcv

bt1cpqcv1#

使用$MyInvocation.MyCommand.Name变量获取当前Runbook的名称。

$runbookName = $MyInvocation.MyCommand.Name

字符串
向discord发送关于我的Runbook中的PowerShell Runbook结果与Web请求的通知:
您可以将Invoke-WebRequest PowerShell命令与Post方法调用一起使用,沿着使用下面的脚本。

$runbookName = $MyInvocation.MyCommand.Name
$webhookURL = "https://discord.com/" //Modify URL as per your requirement.
$message = "runbook is completed"
$reqbody = @{                                          
   content = $message
} | ConvertTo-Json
Invoke-WebRequest -Uri $webhookURL -Method Post -Body $reqbody -ContentType "application/json"


的数据

6tdlim6h

6tdlim6h2#

我想这样做的通知发送自动化工作,如果你需要这样的东西,我想告诉你我是如何解决的。
首先转到您的自动化帐户下的诊断设置,并设置日志分析工作区以记录JobStream和JobStreams数据。
然后按照您选择的自动化帐户下的Alerts-> Create-> Alert rule步骤创建一个Alert Rule。

AzureDiagnostics  | where ResourceProvider == "MICROSOFT.AUTOMATION"  | where Category == "JobLogs"  | where ResultType == "Started" or ResultType == "Completed"

字符串
您还可以使用此流程通过不同的查询获取不同的信息。我正在跟踪此特定作业的Runbook的开始和结束。我还创建了一个警报机制,用于发送在不同版本中收到错误的Runbook以及它们收到的错误。感谢所有感兴趣的人。

相关问题