15.1. 执行核心操作【已完成】

未匹配的标注

本章节描述的插件对于核心操作来说是很有用的,例如转换和移除事件。

日期过滤器

解析字段中的日期,用作事件的 Logstash 时间戳。

以下配置解析 logdate 字段并设置为 Logstash 时间戳:

filter {
  date {
    match => [ "logdate", "MMM dd yyyy HH:mm:ss" ]
  }
}

移除过滤器

移除事件。该过滤器一般结合条件语句使用。

以下配置移除 debug 级别的日志信息:

filter {
  if [loglevel] == "debug" {
    drop { }
  }
}

指纹过滤器

通过使用一致性哈希算法生成字段指纹。

以下配置将 IP@timestampmessage 字段生成指纹并将哈希添加到 名为 generated_id 的元字段中:

filter {
  fingerprint {
    source => ["IP", "@timestamp", "message"]
    method => "SHA1"
    key => "0123"
    target => "[@metadata][generated_id]"
  }
}

转换过滤器

你可以在字段上执行一般的转换。你可以在事件中重命名,移除,替换和修改字段。

以下配置将 HOSTORIP 重命名为 client_ip

filter {
  mutate {
    rename => { "HOSTORIP" => "client_ip" }
  }
}

以下配置将指定字段的前后空格去掉:

filter {
  mutate {
    strip => ["field1", "field2"]
  }
}

ruby过滤器

执行 Ruby 代码。

以下配置执行 Ruby 代码并取消 90% 的事件。

filter {
  ruby {
    code => "event.cancel if rand <= 0.90"
  }
}

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 0
发起讨论 只看当前版本


暂无话题~