检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
正则表达式函数 本文介绍正则表达式函数的语法规则,包括参数解释、函数示例等。 类型 函数 说明 值提取函数 regex_select 根据正则表达式提取符合条件的值。 regex_findall 根据正则表达式获得符合条件的所有值列表。 匹配判断 regex_match 判断是否匹配正则表达式。
提取目标字符串中符合正则表达式的子串。 regexp_like函数 判断目标字符串是否符合正则表达式。 regexp_extract_all函数 从目标字符串中提取符合正则表达式的子字符串。 regexp_replace函数 删除或替换目标字符串中符合正则表达式的子串。 regexp_split函数
说明 key 任意 是 源字段名。如果字段不存在,则不进行任何操作。特殊字段名的设置请参见事件类型。 正则表达式 String 是 提取字段的正则表达式。 支持捕获组和非捕获组正则表达式。 非捕获有时需要使用分组,且使用前缀?:。例如\w+@\w+\.\w(?:\.\cn)?。关于分组不捕获请参见非捕获组。
Nginx访问日志记录了用户访问的详细信息,解析Nginx访问日志对业务运维具有重要意义。本文介绍如何使用正则表达式函数解析Nginx访问日志。 现以一条Nginx成功访问日志为例,介绍如何使用正则表达式解析Nginx成功访问日志。 原始日志 {"source":"192.168.0.1", "client_ip":"192
REGEXP_EXTRACT(expr, pattern, [index]) 返回字符串中匹配指定正则表达式的子字符串。索引从1开始。如果没匹配,则返回空值。如果没有指定索引,或者索引为0,则返回第一个匹配的子字符串。如想精确匹配,请在正则表达式前后分别加上符号^和$。 SELECT REGEXP_EXTRACT(str1
e_match 判断当前日志字段的值是否满足正则表达式。支持和其他函数组合使用。 e_match_any 判断当前日志字段的值是否满足正则表达式,任意字段匹配返回true,否则返回false。 e_match_all 判断当前日志字段的值是否满足正则表达式,所有字段匹配返回true,否则返回false。
关键字加工 值加工 e_kv 使用特定正则表达式 支持默认的字符集、特定分隔符或者带(、)或(")分隔 支持前后缀 支持文本escape e_kv_delimit 使用特定正则表达式 使用分隔符 支持前后缀 默认无 e_regex 组合自定义正则表达式和默认字符集过滤 完全自定义 自定义
正则分析:适用于日志文本中每行内容为一条原始日志,且每条日志可按正则表达式提取为多个key-value键值的日志解析模式。使用正则表达式提取字段,您需要先输入日志样例,再自定义正则表达式。配置完成后,系统将根据正则表达式中的捕获组提取对应的key-value。 JSON:适用于日志
正则分析:适用于日志文本中每行内容为一条原始日志,且每条日志可按正则表达式提取为多个key-value键值的日志解析模式。使用正则表达式提取字段,您需要先输入日志样例,再自定义正则表达式。配置完成后,系统将根据正则表达式中的捕获组提取对应的key-value。 JSON:适用于日志
脱敏方法有正则表达式替换(关键函数regex_replace)、Base64转码(关键函数base64_encoding)、MD5编码(关键函数md5_encoding)、str_translate映射(关键函数str_translate)等。更多信息,请参见正则表达式函数和编码解码函数。
单行-完全正则:适用任意格式的单行日志,使用正则表达式提取字段。填写正则匹配规则后,单击验证按钮,支持校验确保正则表达式的正确性。 多行-完全正则:适用任意格式的多行日志,使用正则表达式提取字段。首行正则表达式支持自动生成和手动输入,填写正则匹配规则后,单击验证按钮,支持校验确保正则表达式的正确性。 组合解
keyObject内为键值对,键为demo_fields数组中元素的index,值为field_name,regex_rules对象为正则表达式字符串,整体例子为 {\"keyObject\":{\"1\":\"date\",\"2\":\"num\"},\"regex_rules\":\"^(
String 是 日志字段名,可以为正则表达式。当字段名完全满足条件时删除该字段,保留不满足条件的字段。关于正则表达式的更多信息,请参见正则表达式。至少需要配置一个日志字段。 regex Boolean 否 如果设置为false,表示不使用正则表达式进行匹配。当不配置该参数时,系统默认取值为true。
true:直接报错,数据加工不再继续处理,直接丢弃该条日志。 返回结果 返回提取到的值。 函数示例 示例1:从content字段提取元素name的值。 测试数据 { "content": {"name": "xiaoming", "age": 10} } 加工规则 e_set("json_filter"
操作符函数 解析函数 资源函数 字典函数 列表函数 编码解码函数 IP解析函数 特定结构化数据函数 正则表达式函数 日期时间函数 字符串函数 算术函数 转换函数 操作符函数 事件检查函数 父主题: DSL数据加工语法(邀测)
对任意类型值进行真假判断。 函数示例 示例1: 测试数据 { "ctx1": "true" } 加工规则 e_set("op_not", op_not(v("ctx1"))) 加工结果 ctx1: true op_not: false 示例2: 测试数据 { "ctx1": 345 }
不支持软链接。 不涉及。 单条日志大小 每条日志最大500KB,超出限制部分ICAgent将截断后丢弃。 不涉及。 正则表达式 正则表达式类型支持Perl兼容正则表达式。 不涉及。 同一文件对应多个采集配置 同一个文件只能上报到一个日志组、日志流。如果配置一个文件采集到多个日志流,只会有一个配置生效。
时间通配符来划分多行日志;当选择“正则模式”时,则以正则表达式划分多行日志。 正则表达式 此配置是用来标识一条日志数据的正则表达式。日志格式选择“多行日志”格式后且“分行模式”已选择“正则模式”后需要设置。 时间通配和正则表达式均是从每行日志的开头进行严格匹配,如果匹配不上,则会
示例2:条件判断结果为true,丢弃日志。 测试数据 { "k1":"v1" , "k2": "v2", "k3": "k1" } 加工规则 e_drop(e_search("k1==v1")) 加工结果 因为k1==v1条件为true,因此丢弃该日志。 示例3:条件判断结果为false,保留日志。 测试数据 {
参数%@的值必须在%@-%@之间。 请修改参数值后重试。 LTS.0006 %@ doesn't match pattern. 参数%@不匹配正则表达式。 请设置符合正则表达式的参数后重试。 LTS.0007 Invalid configuration parameters. 无效的配置参数。 请设置正确的配置项参数后重试。