输入标记
标记综述
标记就像是程序变量,一个输入标记由标记名称和标记值组成,如您在仪表板图表的搜索中使用标记,传递您需要的数值。
在搜索中,标记名称语法使⽤ $...$ 分隔符。⽐如,如果您将查询字段输⼊标记定义为"field",数据来源定义为"source",则搜索为
SELECT $field$ from $source$
$env.user$
$env.user_email$
$env.user_display_name$
是仪表板内部预定义的标记,用来表示当前用户,当前用户email及其显示的用户名字。
有关访问标记值的更多语法,请参阅"标记过滤器"
添加输入标记
进入仪表板编辑状态,点击仪表板标题右侧的操作按钮 "添加输入", 得到添加输入对话框。
文本类型输入
默认标记类型为文本框,输入标记名称为"field", 标记值为"_source", 然后点击"确定"按钮完成添加输入。
添加名称为"field"的文本类型标记成功后,仪表板页面中会得到相应的标记面板。
选择器类型标记
在输入对话框中,展开"输入类型"下拉选项,点击"选择器"。
单选类型
设置"标记名称"为country
,"显示标签"输入国家
,"选项来自于"选择预定义选项
,通过"增加标记值选项"按钮来增加选项,然后设置默认标记值。
点击"确定"按钮添加完成后,可以得到显示标记名为"国家"的选择器输入标记"country",其默认选项值为"CN",选项显示为"中国"。
除了"预定义选项",您还可以根据动态查询结果来生成选项值。
设置"标记名称"为countryResult
,"选项来自于"选择预定义选项
,设置"查询语句"select distinct country, lower(country) from cities_csv
。
点击"生成可选字段"按钮将生成查询结果的字段和值,选择"值字段"为country
, "标签字段"为lower(country)
, "默认标记值" us
点击"确定"按钮添加完成后,可以得到根据查询动态返回结果的选择器输入标记"countryResult",其默认选项值为"us"。
您还可以将仪表板中的其他输入标记应用于选择器类型标记的查询语句中,例如select distinct city from cities_csv where country='$country$'
多选类型
选择器类型标记值同样支持多选:
设置"标记名称"为selection
,"选项来自于"选择从查询中提取
,设置"查询语句"select distinct status from access_log
,点击"生成可选字段"按钮将生成查询结果的字段和值。
选择"值字段"为status
,选择"标记值类型"为多选
,"默认标记值"可以选择多个选项,例如 200
, 206
在"多选配置"中支持编辑和包装每一个选项标记值,包括标记值本身的前、后缀,每个选项值的前、后缀以及选项值之间的分隔符,例如填写标记前缀
为in (
,分隔符
为,
, 标记后缀
为)
, 你可以在预览结果
中查看标记值包装效果:
添加一个SQL查询语句为select distinct status from access_log where status $selection$
的表格图表。
标记selection
对应的标记值则为in (200,206)
, SQL语句对应为select distinct status from access_log where status in (200,206)
您可以修改选择器标记的多选值,例如 200
, 400
, 404
标记selection
对应的标记值则为in (200,400,404)
,对应图表为
时间类型标记
时间类型输入可以用来控制图表的查询时间范围。 展开"输入类型"下拉选项,点击"时间"。
设置"标记名称"为time
,"显示标签"输入时间标记
,"默认标记值"选择相对时间
和最近(过去)一天
。
点击"确定"按钮添加完成后,可以得到显示标记名为"时间标记"的时间输入,其默认选项值为"最近(过去)一天"。
如果在仪表板中使用了TIME_BUCKET变量函数,同时应用了某个时间类型标记。如果希望TIME_BUCKET
中的time_unit
参数根据所选时间范围自动适配,则可以使用自动时间聚合值,其名称为<标记名称>.auto_gran。如时间类型标记名称为range
,则在TIME_BUCKET
函数中使用range.auto_gran
,即time_bucket('$range.auto_gran$', _time)
。
您可以在图表查询语句,选择器类型标记的查询语句和自定义搜索钻取的查询语句中使用"时间类型标记":
图表查询语句
选择器类型标记
自定义搜索钻取
您可以在查询语句中通过<标记名称>.earliest_time和<标记名称>.latest_time来访问时间类型标记的开始和结束时间。
例如时间类型标记名称为mytime
,则在SQL语句中使用$mytime.earliest_time$
和$mytime.latest_time$
即可获取相应时间信息。
更新输入标记
文本框类型的输入标记可以在输入框里输入标记值,输入结束或按回车键即可让变更值生效。
选择器类型的输入可以在下拉选择器中选择标记值选项。
时间类型输入在选择新的时间范围后,点击"应用"按钮让变更时间范围值生效。
进入仪表板编辑状态通过点击标记右上角的编辑按钮可以打开编辑标记对话框,在这里你可以更新输入标记类型、和默认取值等等。
删除输入标记
进入仪表板编辑状态通过点击标记右上角的删除按钮可以打开删除输入标记对话框,点击确认可以移除选中的输入标记。
使用标记
进入仪表板编辑状态后,点击图表的"编辑查询"按钮。
在查询语句中使用标记 标记语法使⽤ $...$ 分隔符,例如设置查询语句为
SELECT $field$, COUNT(*) FROM $source$ GROUP BY $field$
, 点击"确定"按钮。 在查询语句中使用标记后,图表就会根据对应的输入标记值生成相应的查询语句,上面的例句就会对应转换为SELECT _source, COUNT(*) FROM _audit GROUP BY _source
。在查询范围中使用时间类型输入 查询时间范围选择 "时间标记值",然后输入已经创建的时间类型标记名称,例如"time",点击"确定"按钮。 使用时间输入标记作为查询范围之后,图表的查询时间范围就会对应转换为所选的时间输入标记的时间范围。