搜索 'Input' 个 Azure Runbook 作业?
Search 'Input' of Azure Runbook Jobs?
我有一个非常简单的问题,可能是设计使然,但我只是想确保我没有遗漏任何东西...
基本上我们在工作中使用了很多操作手册,这导致在自动化帐户下生成了大量工作。我发现可以根据job的创建时间和runbook的名字来搜索,但是没有办法根据runbook的输入参数来搜索吗?
这将极大地帮助解决问题,因为当有人说 "well when were these users created" 或 "when was this instance upgraded" 我可以搜索该输入参数并快速回答问题。
也许最好记录所有输入参数,以便可以通过日志分析进行搜索?
谢谢!!
欢迎来到 Stack Overflow!
是的,目前无法从 Azure 门户根据 runbook 的输入参数进行搜索。这可以作为功能请求在 this UserVoice / 反馈论坛中提出。负责的 Azure 功能/产品团队将对功能请求的可行性进行分类和检查,并相应地确定优先级。
但是,我相信作为一种解决方法,我们可以通过利用 Az PowerShell cmdlet Get-AzAutomationJob 来满足您的要求,如下面的屏幕截图所述。
因此要使用的命令如下所示:
Get-AzAutomationJob -AutomationAccountName "<YourAutomationAccountName>" -ResourceGroupName "<YourAutomationAccountResourceGroupName>" | foreach{Get-AzAutomationJob -ResourceGroupName $_.ResourceGroupName -AutomationAccountName $_.AutomationAccountName -Id $_.JobId | ?{$_.JobParameters.GetEnumerator().Where({$_.Value -contains "<KeyValueName>"})}}
如果您想验证 2 个作业参数(一个是键,另一个是值),或者类似下面的内容
Get-AzAutomationJob -AutomationAccountName "<YourAutomationAccountName>" -ResourceGroupName "<YourAutomationAccountResourceGroupName>" | foreach{Get-AzAutomationJob -ResourceGroupName $_.ResourceGroupName -AutomationAccountName $_.AutomationAccountName -Id $_.JobId | ?{$_.JobParameters.GetEnumerator().Where({$_.Value -contains "<KeyValueName>"}) -and $_.JobParameters.GetEnumerator().Where({$_.Key -contains "<KeyName>"})}}
同样,您可能需要稍微调整命令以满足您的需要。
我有一个非常简单的问题,可能是设计使然,但我只是想确保我没有遗漏任何东西...
基本上我们在工作中使用了很多操作手册,这导致在自动化帐户下生成了大量工作。我发现可以根据job的创建时间和runbook的名字来搜索,但是没有办法根据runbook的输入参数来搜索吗?
这将极大地帮助解决问题,因为当有人说 "well when were these users created" 或 "when was this instance upgraded" 我可以搜索该输入参数并快速回答问题。
也许最好记录所有输入参数,以便可以通过日志分析进行搜索?
谢谢!!
欢迎来到 Stack Overflow!
是的,目前无法从 Azure 门户根据 runbook 的输入参数进行搜索。这可以作为功能请求在 this UserVoice / 反馈论坛中提出。负责的 Azure 功能/产品团队将对功能请求的可行性进行分类和检查,并相应地确定优先级。
但是,我相信作为一种解决方法,我们可以通过利用 Az PowerShell cmdlet Get-AzAutomationJob 来满足您的要求,如下面的屏幕截图所述。
因此要使用的命令如下所示:
Get-AzAutomationJob -AutomationAccountName "<YourAutomationAccountName>" -ResourceGroupName "<YourAutomationAccountResourceGroupName>" | foreach{Get-AzAutomationJob -ResourceGroupName $_.ResourceGroupName -AutomationAccountName $_.AutomationAccountName -Id $_.JobId | ?{$_.JobParameters.GetEnumerator().Where({$_.Value -contains "<KeyValueName>"})}}
如果您想验证 2 个作业参数(一个是键,另一个是值),或者类似下面的内容
Get-AzAutomationJob -AutomationAccountName "<YourAutomationAccountName>" -ResourceGroupName "<YourAutomationAccountResourceGroupName>" | foreach{Get-AzAutomationJob -ResourceGroupName $_.ResourceGroupName -AutomationAccountName $_.AutomationAccountName -Id $_.JobId | ?{$_.JobParameters.GetEnumerator().Where({$_.Value -contains "<KeyValueName>"}) -and $_.JobParameters.GetEnumerator().Where({$_.Key -contains "<KeyName>"})}}
同样,您可能需要稍微调整命令以满足您的需要。