全局操作函数概览

本文介绍日志服务提供的全局操作函数清单。日志服务LOG DSL(Domain Specific Language)提供近三十种全局操作函数,您可以在数据加工中通过全局操作函数控制加工逻辑。

全局操作函数列表如下表所示。

函数类型

函数

操作说明

流程控制函数

e_if

多个条件与操作组合。

e_if_else

根据条件判断的结果进行对应操作。

e_switch

条件与操作的组合。满足一个条件后,操作后跳出。

e_compose

组合一系列操作,并依次调用。

事件操作函数

e_drop

根据条件判断是否丢弃日志。

e_keep

根据条件判断是否保留日志。

e_split

基于日志字段的值分裂出多条日志,并且支持通过JMES提取字段后再进行分裂。

e_output

输出日志到指定的Logstore中,且对应的日志不再执行后面的加工规则。

e_coutput

输出日志到指定的Logstore中,且对应的日志继续执行后面的加工规则。

e_to_metric

将日志格式转化为时序存储(MetricStore)的格式。

字段操作函数

v

获得日志特定字段的值。

e_set

添加新字段或为现有字段设置新的字段值。

e_drop_fields

删除符合条件的日志字段。

e_keep_fields

保留符合条件的日志字段。

e_pack_fields

打包日志字段,并输出到新的字段中。

e_rename

重命名符合条件的日志字段名称。

字段值提取函数

e_regex

根据正则表达式提取字段的值并赋值给其他字段。

e_json

对特定字段中的JSON对象进行JSON操作,包括JSON展开、JMES提取或者JMES提取后再展开。

e_kv

通过quote提取多个源字段中的键值对信息。

e_kv_delimit

通过分隔符提取源字段中的键值对信息。

e_csv

使用默认分隔符半角逗号(,)提取多个字段。

e_tsv

使用默认分隔符tab \t提取多个字段。

e_psv

使用默认分隔符竖线(|)提取多个字段。

e_syslogrfc

根据Syslog协议由已知priority值计算出facility和severity,并且匹配相应的level信息。

e_anchor

使用定义的anchor_rules规则提取字符串。

映射富化函数

e_dict_map

在映射关系的字典中,根据输入的字段映射出一个新字段。

e_table_map

在映射表格中查找对应的行,根据输入的字段返回字段的值。

e_tablestore_map

以阿里云表格存储(Tablestore)作为维表数据对原始日志进行富化。

e_redis_map

以阿里云Redis作为维表数据对原始日志进行富化。