1. 统计计算(statistics)脚本
统计计算包括统计和计算。统计是对某个马赛克数据的垂直统计,比如马赛克数据上报拼接了n次、统计期间该参数的平均值、最大值、最小值等;计算是对统计结果加减乘除等再计算。
1.1. 脚本规则
1.1.1. 统计
- 脚本示例
{
"name": "读数转用量",
"func": "accumulate",
"key": "L2",
"schedule": {
"spec": "0 0 1 *\/1 * *"
},
"result": {
"precision": 2
},
"filter": "FILTER1043991947816",
"condition": "",
"object_list": ["OBJ20211104001"]
}
字段说明
name
:指定统计项目名称func
:指定统计方法,就是对设备的某个fv要进行何种统计,支持的统计函数有key
:指定要统计的设备的FVschedule
spec
:统计周期,指定多久生成一次结果,周期不可小于一分钟
result
precision
:指定结果输出的精度
filter
:指定统计项目引用的过滤模型condition
:指定统计项目引用的条件模型func_params
:函数参数设置object_list
:要统计的设备列表
1.1.2. 计算
- 脚本示例
{
"name": "devtest加一",
"expr": "STATISTICS1060635410096+1",
"result": {
"precision": 2
},
"trigger": ["STATISTICS1060635410096"]
}
字段说明
name
:指定计算项目的名称expr
:指定计算项目使用的表达式- 支持使用的
+
-
*
/
()
- 支持使用的
triggert
:结果由统计脚本触发,这里填写统计项目的UID,支持填写多个result
precision
:指定结果输出的精度
1.1.3. 条件模型
logic_expr
:必须填写逻辑表达式- 支持使用的
+
-
*
/
()
&&
||
&
|
==
!=
- 指定的变量必须在
obj_var_list
指定
- 支持使用的
obj_var_list
:指定用于给logic_expr
引用的对象FV
列表default
:指定默认值(若logic_expr计算错误,使用default的值。true为保留,false为不保留)
1.1.4. 过滤模型
过滤模型目前仅在函数
accumulate
会使用
first_min
:阈值过滤最小值first_max
:阈值过滤最大值sigma
:过滤系数mean_factor
:规划阈值过滤
1.1.5. 重算
重算功能目前只能针对
statistics
重算
uid
:统计IDobject_id
:重算设备IDduration
start
:"重算开始时间"end
:"重算结束时间"
1.1.6. 变量规则约束
变量名只能是字母(A-Z,a-z)、数字(0-9)或下划线
第一个字母不能是数字,例如2Lerver这不是一个合法的变量
区分大小写,例如iA和ia是两个不同的变量
不能是golang关键字,例如不能用go这个单词来命名一个变量
golang保留关键字参考