如何在 Azure Workbook 中获得条件参数值?
我想要一个名为环境的参数。它有一些文本值。例如。它有两个值 test
和 product
。
此外,我还想要另外两个参数:subscription 和 app_insights。
现在,我想根据环境参数值自动选择订阅和 app_insights 值。
因此,当环境参数为 test
时,我尝试为订阅参数选择测试订阅:
summarize by subscriptionId
| project subscriptionId=strcat("/subscriptions/", subscriptionId),
selected = case("{environment}" == "test" and subscriptionId == "test subscription id", true, false)
但是环境参数似乎没有替换“{environment}”
占位符。如果我删除 "{environment}"== "test"
检查,则会按预期选择测试订阅。
如何使用一个参数来决定另一个参数的值?有更好的方法来实现我想要的吗?我最好还希望不要向工作簿的用户显示订阅和 app_insights 参数,并防止手动编辑它们。
最佳答案
下面的示例说明了一个参数如何以另一个参数为条件。
<小时/>假设我们有一个名为 Environment
的参数,其类型为 Options group
,它从以下 JSON 获取数据:
[
{ "value":"'dev'", "label":"dev", "selected":true },
{ "value":"'prod'", "label":"prod" }
]
然后,我们可以创建一个辅助参数,如果选择 dev
,它将返回某个列表,如果选择 prod
,则返回一个不同的列表。第二个参数的类型为 Dropdown
,并配置为跨所有订阅运行 Azure 资源图查询。
resources
| extend dev_subs = dynamic([
"dev-sub1",
"dev-sub2"
])
| extend prod_subs = dynamic([
"prod-sub1",
"prod-sub2"
])
| extend selection = {Environment}
| extend output = iff(selection == "dev", dev_subs, prod_subs)
| project output
| mv-expand output
| distinct tostring(output)
当在第一个参数中选择dev
时,第二个参数将显示一个带有选项dev-sub1
和dev-sub2
的下拉菜单;当选择 prod
时,第二个参数将显示一个包含选项 prod-sub1
和 prod-sub2
的下拉菜单。
关于azure - 如何在 Azure Workbook 中获得条件参数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76779080/