uuid

对于其他版本,请参阅 插件版本文档

安装

对于默认情况下未捆绑的插件,可以通过运行 bin/logstash-plugin install logstash-filter-uuid 轻松安装。 有关更多详细信息,请参阅 使用插件

帮助

有关插件的问题,请在 论坛 中创建一个主题。对于bug或功能请求,请在 Github 创建issue。有关Elastic支持插件的列表,请参阅 Elastic支持列表

说明

uuid过滤器允许您生成 UUID 并将其作为字段添加到每个已处理的事件。

如果您需要生成对每个事件都唯一的字符串,即使多次处理相同的输入,这也很有用。如果要在每次处理具有给定内容的事件(即hash)时生成相同的字符串,则应使用 Fingerprint 过滤器

生成的UUID遵循 RFC 4122 的 version 4 声明,并将表示为标准十六进制字符串格式,例如,"e08806fe-02AF-406C-bbde-8a5ae4475e57"。

uuid过滤器配置项

此插件支持以下配置选项以及稍后描述的 通用配置项

Setting Input type Required
overwrite boolean No
target string

另请参阅 通用配置项 以获取所有输入插件支持的选项列表。

overwrite
  • 值类型是 boolean
  • 默认值为 false

如果当前字段中的值(如果有)应由生成的UUID覆盖。默认为 false(即如果该字段存在,具有任何值,则不会被覆盖)

例:

filter {
   uuid {
     target    => "uuid"
     overwrite => true
   }
}
target
  • 这是必需的设置。
  • 值类型是 string
  • 此设置没有默认值。

选择应存储生成的UUID的字段的名称。

例:

filter {
  uuid {
    target => "uuid"
  }
}

通用配置项

所有过滤器插件都支持以下配置选项:

设置 输入类型 必须
add_field hash
add_tag array
enable_metric boolean
id string
periodic_flush boolean
remove_field array
remove_tag array
add_field
  • 值类型是 hash
  • 默认值为 {}

如果此过滤器配置成功,则向此事件添加任意字段。字段名称可以是动态的,并使用 %{field} 包含事件的部分内容。

例:

filter {
  uuid {
    add_field => { "foo_%{somefield}" => "Hello world, from %{host}" }
  }
}
# You can also add multiple fields at once:
filter {
  uuid {
    add_field => {
      "foo_%{somefield}" => "Hello world, from %{host}"
      "new_field" => "new_static_value"
    }
  }
}

如果事件具有字段 "somefield" == "hello" ,则此过滤器成功时将添加字段 foo_hello (如果存在),上面的值和 %{host} 部分替换为事件中的该值。第二个例子还会添加一个硬编码字段。

add_tag
  • 值类型是 array
  • 默认值为 []

如果此过滤器成功,则向事件添加任意标记。标签可以是动态的,并使用 %{field} 语法包含事件的一部分。

例:

filter {
  uuid {
    add_tag => [ "foo_%{somefield}" ]
  }
}
# You can also add multiple tags at once:
filter {
  uuid {
    add_tag => [ "foo_%{somefield}", "taggedy_tag"]
  }
}

如果事件具有字段 "somefield" == "hello" ,则此过滤器成功时将添加标记 foo_hello(第二个示例当然会添加 taggedy_tag 标记)。

enable_metric
  • 值类型是 boolean
  • 默认值为 true

默认情况下,禁用或启用此插件实例的度量记录,我们会记录所有可用的度量标准,但您可以禁用特定插件的度量收集。

id
  • 值类型是 string
  • 此设置没有默认值。

为插件配置添加唯一 ID。如果未指定ID,Logstash将生成一个ID。强烈建议在配置中设置此ID。当您有两个或更多相同类型的插件时,这尤其有用,例如,如果您有2个http过滤器。在这种情况下添加命名ID将有助于在使用监视API时监视Logstash。

filter {
  uuid {
    id => "ABC"
  }
}
periodic_flush
  • 值类型是 boolean
  • 默认值为 false

定期调用过滤器刷新方法。可选的。

remove_field
  • 值类型是 array
  • 默认值为 []

如果此过滤器成功,请从此事件中删除任意字段。例:

filter {
  uuid {
    remove_field => [ "foo_%{somefield}" ]
  }
}
# You can also remove multiple fields at once:
filter {
  uuid {
    remove_field => [ "foo_%{somefield}", "my_extraneous_field" ]
  }
}
remove_tag
  • 值类型是 array
  • 默认值为 []

如果此过滤器配置成功,则从事件中删除任意tag。tag以是动态的,并使用 %{field} 语法包含事件的一部分。

例:

filter {
  uuid {
    remove_tag => [ "foo_%{somefield}" ]
  }
}
# You can also remove multiple tags at once:
filter {
  uuid {
    remove_tag => [ "foo_%{somefield}", "sad_unwanted_tag"]
  }
}

如果事件具有字段 "somefield" == "hello" ,则此过滤器成功时将删除标记 foo_hello(如果存在)。第二个例子也会删除一个不需要的标签。

results matching ""

    No results matching ""