tencent cloud

日志服务

动态与公告
产品动态
公告
新手指引
产品简介
产品概述
产品优势
地域和访问域名
规格与限制
基本概念
购买指南
计费概述
产品定价
按量计费(后付费)
欠费说明
清理日志服务资源
成本优化
常见问题
快速入门
一分钟入门指南
入门指南
使用 Demo 日志快速体验 CLS
操作指南
资源管理
权限管理
日志采集
指标采集
日志存储
指标存储
检索分析(日志主题)
检索分析(指标主题)
仪表盘
数据处理
投递与消费
监控告警
云产品中心
DataSight 独立控制台
历史文档
实践教程
日志采集
检索分析
仪表盘
监控告警
投递和消费
成本优化
开发者指南
通过 iframe 内嵌 CLS(旧方案)
通过 Grafana 使用 CLS
API 文档
History
Introduction
API Category
Making API Requests
Topic Management APIs
Log Set Management APIs
Index APIs
Topic Partition APIs
Machine Group APIs
Collection Configuration APIs
Log APIs
Metric APIs
Alarm Policy APIs
Data Processing APIs
Kafka Protocol Consumption APIs
CKafka Shipping Task APIs
Kafka Data Subscription APIs
COS Shipping Task APIs
SCF Delivery Task APIs
Scheduled SQL Analysis APIs
COS Data Import Task APIs
Data Types
Error Codes
常见问题
健康监测问题解释
采集相关
检索分析相关
其他问题
服务等级协议
CLS 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

逻辑和数学函数

PDF
聚焦模式
字号
最后更新时间: 2024-01-20 17:59:06

简介

逻辑与数学函数,包含了与或非、大于小于等于、加减乘除取模的运算。写起来和我们在程序语言中稍有区别,如下图所示:



op_if 函数

函数定义

根据条件判断,返回相应的值。

语法描述

op_if(条件1,1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
condition
条件表达式
bool
-
-
data1
条件为 True 时,返回此参数值
string
-
-
data2
条件为 False 时,返回此参数值
string
-
-

示例

示例1 原始日志:
{"data": "abc"}
加工规则:
fields_set("result", op_if(True, v("data"), "false"))
加工结果:
{"result":"abc","data":"abc"}
示例2 原始日志:
{"data": "abc"}
加工规则:
fields_set("result", op_if(False, v("data"), "123"))
加工结果:
{"result":"123","data":"abc"}

op_and 函数

函数定义

对值进行 and 运算,均为 True 时,返回 True,否则返回 False。

语法描述

op_and(1,2, ...)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
可变参列表
参与计算的参数或表达式
string
-
-

示例

示例1 原始日志:
{}
加工规则:
fields_set("result", op_and(True, False))
加工结果:
{"result":"false"}
示例2 原始日志:
{}
加工规则:
fields_set("result", op_and(1, 1))
加工结果:
{"result":"true"}
示例3 原始日志:
{"data":"false"}
加工规则:
fields_set("result", op_and(1, v("data")))
加工结果:
{"result":"false","data":"false"}

op_or 函数

函数定义

对值进行 or 运算,若存在参数值为 False 则返回 False,否则返回 True。

语法描述

op_or(1,2, ...)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
可变参列表
参与计算的参数或表达式
string
-
-

示例

原始日志:
{}
加工规则:
fields_set("result", op_or(True, False))
加工结果:
{"result":"true"}

op_not 函数

函数定义

对值进行 not 运算。

语法描述

op_not()

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
任意类型的值
any
-
-

示例

示例1 原始日志:
{}
加工规则:
fields_set("result", op_not(True))
加工结果:
{"result":"false"}
示例2 原始日志:
{}
加工规则:
fields_set("result", op_not("True"))
加工结果:
{"result":"false"}

op_eq 函数

函数定义

对值进行比较,相等则返回 True。

语法描述

op_eq(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

示例1:判断字段 "Post" 和 "Get" 的值是否相等。 原始日志:
{"Post": "10", "Get": "11"}
加工规则:
fields_set("result", op_eq(v("Post"), v("Get")))
将结果保存到result。 加工结果:
{"result":"false","Post":"10","Get":"11"}
示例2:判断字段 "field1" 和 "field2" 的值是否相等。 原始日志:
{"field1": "1", "field2": "1"}
加工规则:
fields_set("result", op_eq(v("field1"), v("field2")))
加工结果:
{"result":"true","field1":"1","field2":"1"}

op_ge 函数

函数定义

对值进行比较,值1大于或等于值2时返回 True。

语法描述

op_ge(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

示例1 原始日志:
{"field1": "20", "field2": "9"}
加工规则:
fields_set("result", op_ge(v("field1"), v("field2")))
加工结果:
{"result":"true","field1":"20","field2":"9"}
示例2 原始日志:
{"field1": "2", "field2": "2"}
加工规则:
fields_set("result", op_ge(v("field1"), v("field2")))
加工结果:
{"result":"true","field1":"2","field2":"2"}

op_gt 函数

函数定义

对值进行比较,值1大于值2时返回 True。

语法描述

op_gt(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

原始日志:
{"field1": "20", "field2": "9"}
加工规则:
fields_set("result", op_ge(v("field1"), v("field2")))
加工结果:
{"result":"true","field1":"20","field2":"9"}

op_le 函数

函数定义

对值进行比较,值1小于或等于值2时返回 True。

语法描述

op_le(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

原始日志:
{"field1": "2", "field2": "2"}
加工规则:
fields_set("result", op_le(v("field1"), v("field2")))
加工结果:
{"result":"true","field1":"2","field2":"2"}

op_lt 函数

函数定义

对值进行比较,值1小于值2时返回 True。

语法描述

op_lt(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

原始日志:
{"field1": "2", "field2": "3"}
加工规则:
fields_set("result", op_lt(v("field1"), v("field2")))
加工结果:
{"result":"true","field1":"2","field2":"3"}

op_add 函数

函数定义

对值进行求和运算。

语法描述

op_add(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

原始日志:
{"field1": "1", "field2": "2"}
加工规则:
fields_set("result", op_add(v("field1"), v("field2")))
加工结果:
{"result":"3","field1":"1","field2":"2"}

op_sub 函数

函数定义

对值进行求差运算。

语法描述

op_sub(值1, 值2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

原始日志:
{"field1": "1", "field2": "2"}
加工规则:
fields_set("result", op_sub(v("field1"), v("field2")))
加工结果:
{"result":"-1","field1":"1","field2":"2"}

op_mul 函数

函数定义

对值进行乘积运算。

语法描述

op_mul(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

原始日志:
{"field1": "1", "field2": "2"}
加工规则:
fields_set("result", op_mul(v("field1"), v("field2")))
加工结果:
{"result":"2","field1":"1","field2":"2"}

op_div 函数

函数定义

对值进行除法运算。

语法描述

op_div(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

示例1 原始日志:
{"field1": "1", "field2": "2"}
加工规则:
fields_set("result", op_div(v("field1"), v("field2")))
加工结果:
{"result":"0","field1":"1","field2":"2"}
示例2 原始日志:
{"field1": "1.0", "field2": "2"}
加工规则:
fields_set("result", op_div(v("field1"), v("field2")))
加工结果:
{"result":"0.5","field1":"1.0","field2":"2"}

op_sum 函数

函数定义

对多值累加求和。

语法描述

op_sum(1,2, ...)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
可变参列表
数值类型的值或可转为数值的字符串
string
-
-

示例

原始日志:
{"field1": "1.0", "field2": "10"}
加工规则:
fields_set("result", op_sum(v("field1"), v("field2")))
加工结果:
{"result":"11.0","field1":"1.0","field2":"10"}

op_mod 函数

函数定义

对值进行模计算。

语法描述

op_mod(1,2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-

示例

示例1 原始日志:
{"field1": "1.0", "field2": "0"}
加工规则:
fields_set("result", op_mod(v("field1"), v("field2")))
加工结果:
{"result":"2","field1":"1","field2":"2"}
示例2 原始日志:
{"field1": "1.0", "field2": "5"}
加工规则:
fields_set("result", op_mod(v("field1"), v("field2")))
加工结果:
{"result":"1.0","field1":"1.0","field2":"5"}
示例3 原始日志:
{"field1": "6", "field2": "4"}
加工规则:
fields_set("result", op_mod(v("field1"), v("field2")))
加工结果:
{"result":"2","field1":"6","field2":"4"}

op_null 函数

函数定义

对值进行是否为 null 判断,是则返回 true,否则返回 false。

语法描述

op_null()

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
任意类型的值
any
-
-

示例

示例1 原始日志:
{}
加工规则:
fields_set("result", op_null("null"))
加工结果:
{"result":"true"}
示例2 原始日志:
{"data": null}
加工规则:
fields_set("result", op_null(v("data")))
加工结果:
{"data": "null", "result":"true"}

op_notnull 函数

函数定义

对值进行是否为非 null 判断,是则返回 true,否则返回 false。

语法描述

op_notnull()

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data
任意类型的值
any
-
-

示例

示例1 原始日志:
{}
加工规则:
fields_set("result", op_notnull("null"))
加工结果:
{"result":"false"}
示例2 原始日志:
{"data": null}
加工规则:
fields_set("result", op_notnull(v("data")))
加工结果:
{"data": "null", "result":"false"}

op_str_eq 函数

函数定义

对字符串值进行比较,相等则返回 true。

语法描述

op_str_eq(值1, 值2, ignore_upper=False)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
字符串类型的值
string
-
-
data2
字符串类型的值
string
-
-
ignore_upper
是否区分大小写
bool
False
-

示例

示例1 原始日志:
{"field": "cls"}
加工规则:
fields_set("result", op_str_eq(v("field"), "cls"))
加工结果:
{"result":"true","field":"cls"}
示例2 原始日志:
{"field": "cls"}
加工规则:
fields_set("result", op_str_eq(v("field"), "etl|cls|data"))
加工结果:
{"result":"true","field":"cls"}
示例3 原始日志:
{"field": "CLS"}
加工规则:
fields_set("result", op_str_eq(v("field"), "cls", ignore_upper=True))
加工结果:
{"result":"true","field":"CLS"}
示例4 原始日志:
{"field": "CLS"}
加工规则:
fields_set("result", op_str_eq(v("field"), "etl|cls|data", ignore_upper=True))
加工结果:
{"result":"true","field":"CLS"}

random 函数

函数定义

生成随机数(两个参数之间的一个随机数),左闭右闭。

语法描述

random(值1, 值2)

参数说明

参数名称
参数描述
参数类型
是否必须
参数默认值
参数取值范围
data1
数值类型的值或可转为数值的字符串
number
-
-
data2
数值类型的值或可转为数值的字符串
number
-
-

示例

示例1 原始日志:
{"field1": "1"}
加工规则:
log_keep(op_eq(random(1, 5), 3))
加工结果:
{"field1": "1"}
示例2 原始日志:
{"field1": "1"}
加工规则:
fields_set("field2", random(1, 5))
加工结果:
{"field1":"1", "field2":"4"}


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈