我正在使用 Application Insight Workbook 在 IIS 日志上设计图表。我想添加一个用户可以在计算机上过滤的参数。这一切都很好并且有效。此下拉列表允许多项选择,如下所示:
我在查询中使用这样的自定义参数
W3CIISLog | where Computer in ({Computer})
如何更改我的查询以同时支持多项选择和下拉菜单中的“全部”?这完全有可能实现吗?
我正在使用 Application Insight Workbook 在 IIS 日志上设计图表。我想添加一个用户可以在计算机上过滤的参数。这一切都很好并且有效。此下拉列表允许多项选择,如下所示:
我在查询中使用这样的自定义参数
W3CIISLog | where Computer in ({Computer})
如何更改我的查询以同时支持多项选择和下拉菜单中的“全部”?这完全有可能实现吗?
我们有一些特殊的 github 文档,其中包含有关如何对 all 进行特殊处理的示例。(看起来此信息尚未发布到公共 azure 文档)
从那里复制:
一种方法是
[]
用作“全部”值,然后像这样编写查询:let selection = dynamic([{Selection}]); SomeQuery | where array_length(selection) == 0 or SomeField in (selection)
这将处理空选择或“所有”选择相同(由 array_length 检查处理)并且将在选择其他任何内容时在 SomeField 中查找选定值
其他常见情况在需要参数时使用'*'作为特殊标记值,然后用
| where "*" in ({Selection}) or SomeField in ({Selection})
(您也可以使用has_any
代替in
(或in~
不区分大小写in
),具体取决于您查询的方式和您的数据是什么等。