You need to enable JavaScript to run this app.
导航
字段切割重组插件
最近更新时间:2025.06.25 17:32:12首次发布时间:2025.06.25 17:32:12
我的收藏
有用
有用
无用
无用

您可以使用 LogCollector 的 split_select 插件,按指定分隔符拆分指定字段的值,根据索引位置选取对应元素拼接为新的字段添加到日志中。

  • 分隔符:用于拆分原始字段和拼接选取的字段。
  • 索引:用于选取字段拆分后的元素,索引位置从0开始,为闭区间。

说明

LogCollector V2.2.5 及后续版本支持该插件。如何查看 LogCollector 版本,请参考2 查看软件版本

split_select 插件参数说明

名称

类型

是否必选

说明

field

String

待拆分的值的字段名称。

new_field

String

存储拼接的值的新字段名称。

separator

String

拆分field 字段值的分隔符。

index

Object

选取拆分后元素的索引范围。

keep_source

Boolean

是否保留原始的 field 字段值。

索引 index 参数说明:

名称

类型

是否必选

说明

start_index

Integer

索引的起始位置。

end_index

Integer

索引的结束位置。
-1表示选取到最后一个元素。

选取字段中间元素示例
  • 日志内容:

    {
        "path_info": "/usr/local/bin/app"
    }
    
  • LogCollector 的 split_select 插件处理器配置:
    保留原始字段path_info的值,按分隔符/拆分,选择索引位置[1,2]的元素,将其保存到selected_path字段。

    {
        "processors": [
            {
                "split_select": {
                    "field": "path_info",
                    "new_field": "selected_path",
                    "separator": "/",
                    "index": {
                        "start_index": 1,
                        "end_index": 2
                    },
                    "keep_source": true
                }
            }
        ]
    }
    
  • 处理结果:

    说明

    索引位置从指定的分隔符 "/"前开始。

    {
        "path_info": "/usr/local/bin/app",
        "selected_path": "usr/local"
    }
    

选取字段指定位置到末尾示例
  • 键值对日志如下:

    {
        "tags": "apple,banana,orange,grape"
    }
    
  • LogCollector 的 split_select 插件处理器配置如下:
    不保留原始字段tags的值,按分隔符,拆分,选择拆分字段后的索引位置从2到末尾的元素,将其保存到last_two_fruits字段。

    {
        "processors": [
            {
                "split_select": {
                    "field": "tags",
                    "new_field": "last_two_fruits",
                    "separator": ",",
                    "index": {
                        "start_index": 2,
                        "end_index": -1
                    },
                    "keep_source": false
                }
            }
        ]
    }
    
  • 处理结果:

    {
        "last_two_fruits": "orange,grape"
    }
    

选取字段首位元素示例
  • 键值对日志如下:

    {
        "file_name": "report.final.docx",
    }
    
  • LogCollector 的 split_select 插件处理器配置如下:
    保留原始字段file_name的值,按分隔符.拆分,选择拆分字段后的第一个元素,将其保存到base_name字段。

    {
        "processors": [
            {
                "split_select": {
                    "field": "file_name",
                    "new_field": "base_name",
                    "separator": ".",
                    "index": {
                        "start_index": 0,
                        "end_index": 0
                    },
                    "keep_source": true
                }
            }
        ]
    }
    
  • 处理结果:

    {
        "file_name": "report.final.docx",
        "base_name": "report"
    }