# 1. 模板变量
模板变量是通过在当前视图定义一组变量,并由子视图的搜索条件引用变量,来快速的改变子视图的搜索条件,就可达到在一个视图仅需要改变变量的值,就可以查看其对应的视图,而无需仅因搜索条件的不同而构建多个相同的可视化面板。
# 1.1 管理模板变量
可通过模板变量列表对模板变量进行统一的管理。
如下图所示,在模板变量列表中,支持① 新增、② 删除、③ 修改操作,支持在⑤ 搜索栏中输入任意字符串,也支持④ 设置列宽的展示方式,如均分列宽,按内容分配列宽。

# 1.2 新建模板变量
需要对当前视图构建一些快速搜索条件时,则可新建模板变量来实现。例如:构建应用可观测性视图时,需要快速查看不同应用的视图,则可将应用这个搜索条件为构建一个模板变量。
第一步:点击视图详情页面的① 设置按钮,选择② 管理模板变量

第二步:点击模板变量列表弹出框的③ 新建模板变量按钮

第三步:根据所需,创建模板变量。DeepFlow 平台一共提供三种类型的模板变量,分别为下拉选择、文本输入、分组,详细描述见后续对应章节。

# 1.2.1 下拉选择
下拉选择类型的模板变量,是通过下拉框切换的形式来改变搜索条件。目前支持对 DeepFlow 平台的数据库 resource 和 xx_enum 类型的 Tag 构建此类型的模板变量。
- 注:DeepFlow 平台数据库描述,见后续说明。

- 取值范围:选择模板变量的取值
- ① 传值模式:不同的数据传值方式不同
- 仅传值:支持传输 id 查询
- 传标签:支持传输 string 查询
- ② 取值范围:确定模板变量取值所在的数据表
- ③ :确定模板变量取值对应的 Tag
- ④ :选择模板变量对应的取值
- ① 传值模式:不同的数据传值方式不同
- 选择模式:通过下拉框切换的形式来改变搜索条件,默认只能单选
- ⑤ :勾选
多选,则可切换为多选模式 - ⑤ :勾选
全选,则候选项中出现全选,即选中当前模板变量全部的取值
- ⑤ :勾选
下拉选择类型的模板变量,仅能被 name 和 type 相同的 Tag 引用。例如取值来自 flow_metrics.vtap_flow_port数据表的 chost 这个 Tag,则引用的时候只能被chost 引用。模板变量会以下拉框候选项出现在搜索条件中,选择模板变量,则成功引用了模板变量。


# 1.2.2 文本输入
文本输入类型的模板变量,是通过输入字符串的形式来改变搜索条件。

文本输入类型的模板变量,支持被任何可直接输入的 Tag 或者操作符引用。在搜索条件中出现的形式与下拉选择类型的模板变量类似。
- ① Tag 引用:支持 int、int_enum、string、ip、mac 类型,以上数据类型 Tag 均支持所有操作符

- ② 操作符引用:支持 :, !:, =~, !~ 类型,以上类型均支持所有类型 Tag

# 1.2.3 分组
分组类型的模板变量,是通过下拉框切换的形式改变分组。例如需要从类似K8s 集群 -> K8s 命名空间 -> K8s 容器服务 -> K8s 工作负载 -> K8s 容器 POD这种,层层深入挖掘数据时,可构建此模板变量。

- 取值范围:目前 DeepFlow 平台数据库的所有
Tag都可以作为此类型模板变量的取值- ① :确定模板变量取值所在的数据表
- ② :选择模板变量对应的取值
- 选择模式:详情描述,见下拉选择类型的模板变量描述
- 注:主分组不可以引用
多选或全选模式的模板变量
- 注:主分组不可以引用
分组类型的模板变量,仅可被搜索条件中的分组引用。在分组下拉框中,以候选项的形式出现。

# 1.3 操作模板变量
模板变量引用成功后,则可在视图的顶部改变模板变量的值,来快速切换视图的数据了。
