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:指定要统计的设备的FVschedulespec:统计周期,指定多久生成一次结果,周期不可小于一分钟
Image - spec详解
resultprecision:指定结果输出的精度
filter:指定统计项目引用的过滤模型condition:指定统计项目引用的条件模型func_params:函数参数设置object_list:要统计的设备列表
1.1.2. 计算
- 脚本示例
{
"name": "devtest加一",
"expr": "STATISTICS1060635410096+1",
"result": {
"precision": 2
},
"trigger": ["STATISTICS1060635410096"]
}
字段说明
name:指定计算项目的名称expr:指定计算项目使用的表达式- 支持使用的
+-*/()
- 支持使用的
triggert:结果由统计脚本触发,这里填写统计项目的UID,支持填写多个resultprecision:指定结果输出的精度
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:重算设备IDdurationstart:"重算开始时间"end:"重算结束时间"
1.1.6. 变量规则约束
变量名只能是字母(A-Z,a-z)、数字(0-9)或下划线
第一个字母不能是数字,例如2Lerver这不是一个合法的变量
区分大小写,例如iA和ia是两个不同的变量
不能是golang关键字,例如不能用go这个单词来命名一个变量
golang保留关键字参考

Image - go保留关键字