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

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

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

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

字符串
但我没有成功

bt1cpqcv

bt1cpqcv1#

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

  1. $runbookName = $MyInvocation.MyCommand.Name

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

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


的数据

展开查看全部
6tdlim6h

6tdlim6h2#

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

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

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

相关问题