执行核心操作
编辑执行核心操作
编辑本节介绍的插件可用于核心操作,例如更改和丢弃事件。
- date 过滤器
-
解析字段中的日期,用作事件的 Logstash 时间戳。
以下配置解析名为
logdate
的字段以设置 Logstash 时间戳filter { date { match => [ "logdate", "MMM dd yyyy HH:mm:ss" ] } }
- drop 过滤器
-
丢弃事件。此过滤器通常与条件语句结合使用。
以下配置丢弃
debug
级别的日志消息filter { if [loglevel] == "debug" { drop { } } }
- fingerprint 过滤器
-
通过应用一致的哈希值来对字段进行指纹识别。
以下配置对
IP
、@timestamp
和message
字段进行指纹识别,并将哈希值添加到名为generated_id
的元数据字段中filter { fingerprint { source => ["IP", "@timestamp", "message"] method => "SHA1" key => "0123" target => "[@metadata][generated_id]" } }
- mutate 过滤器
-
对字段执行常规更改。您可以重命名、删除、替换和修改事件中的字段。
以下配置将
HOSTORIP
字段重命名为client_ip
filter { mutate { rename => { "HOSTORIP" => "client_ip" } } }
以下配置去除指定字段中前导和尾随空格
filter { mutate { strip => ["field1", "field2"] } }
- ruby 过滤器
-
执行 Ruby 代码。
以下配置执行取消 90% 事件的 Ruby 代码
filter { ruby { code => "event.cancel if rand <= 0.90" } }