Modify

modify 过滤器插件允许您指定规则和条件更改记录。

Example usage

以 JSON 格式的数据作为示例,执行如下操作

  • Key2 重命名为 RenamedKey

  • 如果 OtherKey 不存在,则添加值为 Value3OtherKey 记录映射

输入示例

{
  "Key1"     : "Value1",
  "Key2"     : "Value2"
}

输出示例:

{
  "Key1"       : "Value1",
  "RenamedKey" : "Value2",
  "OtherKey"   : "Value3"
}

Configuration Parameters

Rules

该插件支持以下规则:

操作

参数 1

参数 2

描述

Set

STRING:KEY

STRING:VALUE

添加带有指定 KEYVALUE 的记录键值对映射。如果 KEY 已经存在,则覆盖

Add

STRING:KEY

STRING:VALUE

如果 KEY 不存在,则添加带有指定 KEYVALUE 的记录键值对映射

Remove

STRING:KEY

NONE

删除记录键值对中指定的 KEY

Remove_wildcard

WILDCARD:KEY

NONE

删除记录键值对中 KEY 通配符匹配的键值对

Remove_regex

REGEXP:KEY

NONE

删除记录键值对中 KEY 通正则匹配的键值对

Rename

STRING:KEY

STRING:RENAMED_KEY

如果 KEY 存在且 RENAMED_KEY 不存在,则将 KEY 重命名为 RENAMED_KEY

Hard_rename

STRING:KEY

STRING:RENAMED_KEY

重命名 KEYRENAMED_KEY。如果 RENAMED_KEY 已经存在,则覆盖

Copy

STRING:KEY

STRING:COPIED_KEY

如果 KEY 存在且 COPIED_KEY 不存在,则将 KEY 复制为 COPIED_KEY

Hard_copy

STRING:KEY

STRING:COPIED_KEY

复制 KEYCOPIED_KEY。如果 COPIED_KEY 已经存在,则覆盖

  • 规则不区分大小写,参数区分大小写

  • 过滤器实例中可以设置任意数量的规则

  • 规则按照它们出现的顺序应用,每个规则都根据前一个规则的结果进行操作

Conditions

该插件支持以下条件:

条件

参数 1

参数 2

描述

Key_exists

STRING:KEY

NONE

指定 KEY 存在则为 true

Key_does_not_exist

STRING:KEY

STRING:VALUE

指定 KEY 不存在则为 true

A_key_matches

REGEXP:KEY

NONE

匹配指定正则表达式 KEY 则为 true

No_key_matches

REGEXP:KEY

NONE

不匹配指定正则表达式 KEY 则为 true

Key_value_equals

STRING:KEY

STRING:VALUE

指定 KEY 存在且值为 VALUE,则为 true

Key_value_does_not_equal

STRING:KEY

STRING:VALUE

指定 KEY 存在且值不为 VALUE,则为 true

Key_value_matches

STRING:KEY

REGEXP:VALUE

指定 KEY 存在且值匹配正则表达式 VALUE,则为 true

Key_value_does_not_match

STRING:KEY

REGEXP:VALUE

指定 KEY 存在且值不匹配正则表达式 VALUE,则为 true

Matching_keys_have_matching_values

REGEXP:KEY

REGEXP:VALUE

所有匹配 KEY 的键都具有匹配 VALUE 的值,则为 true

Matching_keys_do_not_have_matching_values

REGEXP:KEY

REGEXP:VALUE

所有匹配 KEY 的键都具有不匹配 VALUE 的值,则为 true

  • 条件不区分大小写,参数区分大小写

  • 过滤器实例中可以设置任意数量的条件

  • 条件适用于整个过滤器实例及其所有规则。而不是单个规则

  • 要应用规则,所有条件都必须为 true(条件间关系为与)

Example #1 - Add and Rename

要开始记录过滤,您可以从命令行或通过配置文件运行过滤器。以下调用 mem(内存数据指标)输入插件,它输出如下示例记录:

Using command Line

注意: 使用命令行模式要求引号正确解析通配符。建议使用配置文件。

Configuration File

Result

命令行和配置调用的输出应相同,输出如下:

Example #2 - Conditionally Add and Remove

Configuration File

Result

Example #3 - Emoji

Configuration File

Result

Last updated

Was this helpful?