跳到主要内容
版本:2.15.0

标记过滤器

标记过滤器综述

标记过滤器是对标记值的筛选编辑工具,确保您正确捕获标记值。 您可以在使用 $...$ 分隔符以访问标记值的时候,加上 |dq|sq|u等过滤器。 比如使用 |dq 过滤器可以将标记值用双引号包装起来。


过滤器筛选配置

筛选描述
双引号
"$token_name|dq$"
将标记引用的值用双引号括起来。如果标记值内有双引号,则转义所有双引号字符"
单引号
"$token_name|sq$"
将标记引用的值用单引号括起来。如果标记值内有单引号,则转义所有单引号字符'
URL格式
"$token_name|u$"
使用URL编码标记值。

过滤器示例

在图表查询中使用

  • 样例中的仪表板图表用来查询某个字段在时间范围内的数量并显示。 token_filter_widget 设置图表查询语句 select "_source", count(*) from _internal where _time > 'now-5m' and "_source" is not null group by "_source" having count(*) > 3000 token_filter_widget_search_1

  • 添加两个输入标记分别为 $fieldname$ 和 $time1$ 用来表示查询字段变量和时间值变量 token_filter_input_token

  • 用标记名替换上面的语句为 select "$fieldname$", count(*) from _internal where _time > '$time1$' and "$fieldname$" is not null group by "$fieldname$" having count(*) > 3000 token_filter_widget_search_2

  • 接下来我们使用标记过滤器来过滤标记值,修改查询语句为 select $fieldname|dq$, count(*) from _internal where _time > $time1|sq$ and $fieldname|dq$ is not null group by $fieldname|dq$ having count(*) > 3000 使用 |dq 来修饰 $fieldname|dq$ 则标记 $fieldname|dq$ 在图表查询语句中可以不用再额外包装双引号"。同理,使用 |sq 来修饰 $time1|sq$ 之后,标记 $time1|sq$ 在图表查询语句中也无需再额外包装单引号'

在标记查询中使用

  • 跟图表的查询语句类似,您可以在查询选项类型的标记的查询语句中使用标记过滤器。 例如select $fieldToken|dq$ from my_event_set where $fieldToken1|dq$ is $tokenValue|sq$token_filter_input_token_search

在钻取设置标记中使用

  • 除了在查询语句中使用标记和标记过滤器以外,你还可以在钻取设置标记时使用标记过滤器。 例如,把图形点击得到的数据用双引号包装的话,则可以设置myvalue = $click.value|dq$token_filter_drilldown_token
提示

对于表格图表,如果想要通过$row.fieldname$ 去设置标记过滤器是不支持的。 例如,表格的字段名为count(*),那么标记$row.count(*)$无法使用编辑器|,即$row.count(*)|dq$是不支持的。 你可以先将$row.count(*)$设置为标记tabletoken,然后在您的查询语句中使用$tabletoken|dq$