变量是值的占位符,您可以在查询语句中使用变量。通过变量,您可以创建更具交互性和动态性的仪表盘。

配置说明

当您在交互事件或过滤器中设置了变量时,需在查询语句中添加变量。变量的语法为${{变量名|默认值}}。例如host=~"^.*"可设置为host=~"${{host|^.*}}"

  • 交互事件

    为当前统计图表设置变量并保存到仪表盘A,如果其他统计图表的交互事件为跳转到仪表盘A且设置的变量名和当前统计图表的变量名相同,则单击其他统计图表中的值时会跳转到仪表盘A,且变量替换为触发交互事件的值,并以替换变量后的查询分析语句刷新统计图表。更多信息,请参见交互事件

  • 过滤器

    如果仪表盘中已有添加了变量的统计图表,则添加变量类型的过滤器后,自动将统计图表的查询和分析语句中的变量替换为您选择的变量值。对整个仪表盘已设置该变量的统计图表都生效。配置示例,请参见添加变量类型的过滤器

  • 变量替换

    变量替换相当于为单个统计图表添加变量类型的过滤器。您在通用配置中设置了变量替换后,日志服务将在当前统计图表的左上边添加一个过滤器。您可以在过滤器中选择对应的值,日志服务会自动将查询和分析语句中的变量替换为您所选择的变量值,执行一次查询和分析操作。配置示例,请参见示例2:设置变量替换

配置示例

示例1:在查询分析语句中设置变量

在如下查询分析语句中,将request_method字段的值设置为变量,即将星号(*)设置为${{method|PUT}}
request_method: * | SELECT __time__ - __time__ %60 AS time, COUNT(1) AS PV GROUP BY time ORDER BY time
占位符变量

示例2:设置变量替换

  1. 在如下查询分析语句中,将60设置为变量,格式为${{date | 60}}
    * | select __time__ - __time__ % 60 as time, COUNT(*) as pv, avg(request_time) as duration, request_method GROUP BY time, request_method order by time limit 1000
  2. 通用配置中设置变量替换。

    设置变量key为date,变量的显示名为时间,变量值的显示名为min、hour,对应的变量值为60、3600。

    变量替换

    设置完成后,统计图表的左上方将出现一个过滤器。选择对应的值后,日志服务将根据您选择的值执行一次查询与分析操作。例如您选择hour,对应的查询分析语句为* | SELECT __time__ - __time__ %3600 AS time, COUNT(*) AS pv, approx_distinct(remote_addr) AS uv GROUP BY time ORDER BY time LIMIT 10000

    变量替换