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:指定要统计的设备的FV
- schedule- spec:统计周期,指定多久生成一次结果,周期不可小于一分钟 - Image - 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:统计ID
- object_id:重算设备ID
- duration- start:"重算开始时间"
- end:"重算结束时间"
 
1.1.6. 变量规则约束
- 变量名只能是字母(A-Z,a-z)、数字(0-9)或下划线 
- 第一个字母不能是数字,例如2Lerver这不是一个合法的变量 
- 区分大小写,例如iA和ia是两个不同的变量 
- 不能是golang关键字,例如不能用go这个单词来命名一个变量 
- golang保留关键字参考  - Image - go保留关键字