追加字段

您可以使用processor_appender插件为指定的字段(可以为不存在的字段)追加特定的值,支持在字段值中添加模板变量。该插件通常与input_prometheus、input_system_v2等时序监控相关的插件结合使用,用于给拉取到的Prometheus数据追加特定的值。

重要

Logtail 0.16.66及以上版本支持processor_appender插件。

参数说明

配置typeprocessor_appenderdetail说明如下表所示。

表 1. 插件说明

参数

类型

是否必选

参数说明

Key

string

字段名称。

Value

string

添加的字段值。日志服务支持在该字段值中添加模板变量。更多信息,请参见模板变量

SortLabels

boolean

如果您要添加__labels__字段,即配置Key__labels__,则需要设置SortLabelstrue,用于对Labels进行重新排序,避免因为Labels不遵循字母序而导致查询异常。该值默认为false。

表 2. 模板变量

模板变量

说明

配置示例

结果示例

{{__ip__}}

替换为Logtail所在服务器的IP地址。

"Value": "{{__ip__}}"

"Value": "192.0.2.1"

{{__host__}}

替换为Logtail所在服务器的主机名。

"Value": "{{__host__}}"

"Value": "logtail-ds-xdfaf"

{{$xxxx}}

通过环境变量引用,需以美元符号($)开头。替换为环境变量的取值。

"Value": "{{$WORKING_GROUP}}"

"Value": "prod"

示例

例如Logtail所在服务器的IP地址为192.0.2.1,主机名为david,存在环境变量WORKING_GROUP的值为prod。如果您需要为__labels__字段添加以上数据,可参见如下配置:

  • 原始数据

    "__labels__":"a#$#b"
  • Logtail插件处理配置

    {
      "processors":[
        {
          "type":"processor_appender",
          "detail": {
            "Key": "__labels__",
            "Value": "|host#$#{{__host__}}|ip#$#{{__ip__}}|group#$#{{$WORKING_GROUP}}",
            "SortLabels": true
          }
        }
      ]
    }
  • 处理结果

    "__labels__":"a#$#b|group#$#prod|host#$#david|ip#$#192.0.2.1"