条件字段处理
简介
processor_fields_with_condition
插件支持根据日志部分字段的取值,动态进行字段扩展或删除。
条件判断
支持多字段取值比较。
关系运算符:equals(默认)、regexp、contains、startwith。
逻辑运算符:and(默认)、or。
过滤能力
默认仅做字段动态处理。
可以开启过滤功能,未命中任意条件则丢弃。
处理能力
与现有插件processor_add_fields、processor_drop保持近似的使用习惯。
可以支持多组条件(Case)进行动态字段处理,但是按顺序匹配上一条后即退出。
配置参数
processor_fields_with_condition
配置
processor_fields_with_condition
配置DropIfNotMatchCondition
Boolean
否
当条均件不满足时,日志是被丢弃(true)还是被保留(false),默认保留(false)。
Switch
Array,类型为Condition
是
切换行动的条件。
Condition
类型说明
Condition
类型说明Case
ConditionCase
是
日志数据满足的条件。
Actions
Array,类型为ConditionAction
是
满足条件时执行的动作。
ConditionCase
类型说明
ConditionCase
类型说明LogicalOperator
String
否
多个条件字段之间的逻辑运算符(and/or),默认值为and。
RelationOperator
String
否
条件字段的关系运算符(equals/regexp/contains/startwith),默认值为equals。
FieldConditions
Map,其中fieldKey和fieldValue为String类型
是
字段名和表达式的键值对。
ConditionAction
类型说明
ConditionAction
类型说明type
String
是
行动类型,可选值是processor_add_fields
/processor_drop
。
IgnoreIfExist
Boolean
否
当相同的键存在时是否要忽略,默认值是false
Fields
Map,其中fieldKey和fieldValue为String类型
是
附加字段的键值对。
DropKeys
Array,类型为String
是
丢弃字段。
样例
采集配置(使用
metric_mock
插件模拟输入)
输出
Last updated