AZ WebApp列表正在显示SiteConfig的空值 [英] az webapp list is showing null values for siteConfig
问题描述
我想要获取Health CheckPath不为空的所有Web应用的列表。我尝试az webapp list --query "[?not_null(siteConfig.healthCheckPath)].{Name:name, ResourceGroup:resourceGroup}"
,但CLI返回空数组。然后,我运行命令az webapp list --query "[?name=='web_app_where_health_check_is_enabled']"
,该命令返回一条记录,但heathCheckPath为空,但实际上为该特定应用程序启用了运行状况检查。
后来我尝试了az webapp show -g <resource-group> -n <name>
,这向我展示了Health CheckPath的价值。所以问题出在list命令上。
我无法使用WebApp show命令,因为我想提取符合特定条件的所有WebApp。
推荐答案
您正在使用not_null
,它是
返回第一个未解析为
null
的参数。此函数接受一个或多个参数,并将按顺序计算它们,直到遇到非空参数。如果所有参数值都解析为null
,则返回值null
。
来源:JMESPath Specification - Built-in Functions - not_null
要筛选空值,只需使用相等(==
)或不等(!=
)。
比较运算符
支持以下操作:
- ==,测试相等性。
- !=,测试不等性。
- <;,小于。
- <;=,小于或等于。
- >;,大于。
- >;=,大于或等于。
每个操作的行为取决于每个求值表达式的类型。
每个运算符的比较语义在下面基于&>对应的JSON类型定义:
相等运算符
对于字符串/数字/真/假/空类型,相等是完全匹配。
您的查询转换为
az webapp list --query "[?siteConfig.healthCheckPath!=null].{Name:name, ResourceGroup:resourceGroup}"
编辑:
作为补充:此查询似乎确实做了我所理解的它需要做的事情:查询Web应用程序,返回siteConfig.healthCheckPath
具有非空值的实例。
这篇关于AZ WebApp列表正在显示SiteConfig的空值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!