decode_url 函数
函数定义
将编码 URL 进行解码。
语法描述
decode_url(值)
参数说明
参数名称 | 参数描述 | 参数类型 | 是否必须 | 参数默认值 | 参数取值范围 |
url | URL 值 | String | 是 | - | - |
示例
原始日志:
{"url":"https%3A%2F%2Fcloud.tencent.com%2F"}
加工规则:
fields_set("result",decode_url(v("url")))
加工结果:
{"result":"https://cloud.tencent.com/","url":"https%3A%2F%2Fcloud.tencent.com%2F"}
md5_encoding 函数
函数定义
计算并返回 MD5 值。
语法描述
md5_encoding(值)
参数说明
参数名称 | 参数描述 | 参数类型 | 是否必须 | 参数默认值 | 参数取值范围 |
值 | 待计算 MD5 值的数据 | String | 是 | - | - |
示例
原始日志:
{"field": "haha"}
加工规则:
fields_set("field", md5_encoding(v("field")))
加工结果:
{"field":"4e4d6c332b6fe62a63afe56171fd3725"}
uuid 函数
函数定义
生成 universally unique identifier (UUID) ,即唯一识别码。
语法描述
uuid()
参数说明
无入参
示例
原始日志:
{"key":"value"}
加工规则:
fields_set("field",uuid())
加工结果:
{"field":"8c2db704-45c0-4ea1-9e2c-cf9c966e35cd","key":"value"}
str_encode 函数
函数定义
对字符串进行指定格式的编码。
语法描述
str_encode(data, encoding="utf8", errors="ignore")
参数说明
参数名称 | 参数描述 | 参数类型 | 是否必须 | 参数默认值 | 参数取值范围 |
data | 待编码的数据 | String | 是 | - | - |
encoding | 编码格式,默认为 utf8,支持 ASCII,latin1,unicode-escape | String | 否 | utf8 | - |
errors | 编码格式无法识别字符时的处理方式 ignore(默认值):忽略不做编码 strict:直接报错,丢弃此条日志数据 replace:使用半角问号(?)替换无法识别部分 xmlcharrefreplace:使用对应XML字符替换无法识别部分 | String | 否 | ignore | - |
示例
原始日志:
{"field1": "asd编码编码\\\\u1234"}
加工规则:
fields_set("field2", str_decode(str_encode(v("field1"), "unicode-escape"), "unicode-escape"))
加工结果:
{"field1":"asd编码编码\\\\u1234","field2":"asd编码编码ሴ"}
str_decode 函数
函数定义
对字符串进行指定格式的解码。
语法描述
str_decode(data, encoding="utf8", errors="ignore")
参数说明
参数名称 | 参数描述 | 参数类型 | 是否必须 | 参数默认值 | 参数取值范围 |
data | 待解码的数据 | String | 是 | - | - |
encoding | 编码格式,默认为utf8,支持ASCII,latin1,unicode-escape | String | 否 | utf8 | - |
errors | 编码格式无法识别字符时的处理方式 ignore(默认值):忽略不做解码 strict:直接报错,丢弃此条日志数据 replace:使用半角问号(?)替换无法解码部分 xmlcharrefreplace:使用对应XML字符替换无法解码部分 | String | 否 | ignore | - |
示例
原始日志:
{"field1": "英文和中文测试:qwertyuiopasdfghjklzxcvbnm QWERTYUIOPASDFGHJKLZXCVBNM 特殊符号:】】【!@#$%^&*()_++~"}
加工规则:
fields_set("field2", str_decode(str_encode(v("field1"))))
加工结果:
{"field1":"英文和中文测试:qwertyuiopasdfghjklzxcvbnm QWERTYUIOPASDFGHJKLZXCVBNM 特殊符号:】】【!@#$%^&*()_++~", "field2":"英文和中文测试:qwertyuiopasdfghjklzxcvbnm QWERTYUIOPASDFGHJKLZXCVBNM 特殊符号:】】【!@#$%^&*()_++~"}
base64_encode 函数
函数定义
将字符串进行 base64编码。
语法描述
base64_encode(值, format="RFC3548")
参数说明
参数名称 | 参数描述 | 参数类型 | 是否必须 | 参数默认值 | 参数取值范围 |
value | 待编码字符串 | string | 是 | - | - |
format | 编码格式, 支持 RFC4648(默认)、RFC3548 | string | 否 | RFC4648 | - |
示例
原始日志:
{"field": "hello world"}
加工规则:
fields_set("encode", base64_encode(v("field")))
加工结果:
{"encode":"aGVsbG8gd29ybGQ=", "field":"hello world"}
base64_decode 函数
函数定义
将字符串进行 base64解码。
语法描述
base64_decode(值, format="RFC3548")
参数说明
参数名称 | 参数描述 | 参数类型 | 是否必须 | 参数默认值 | 参数取值范围 |
value | 待解码字符串 | string | 是 | - | - |
format | 解码格式, 支持 RFC4648(默认)、RFC3548 | string | 否 | RFC4648 | - |
示例
原始日志:
{"field": "aGVsbG8gd29ybGQ="}
加工规则:
fields_set("decode", base64_decode(v("field")))
加工结果:
{"decode":"hello world", "field":"aGVsbG8gd29ybGQ="}