关于java:elastic-stack-那些事11

48次阅读

共计 1362 个字符,预计需要花费 4 分钟才能阅读完成。

input 插件指定数据输出源 一个 pipeline 能够有多个 input 插件 次要有三 stdin file kafka
最简略的输出 从规范输出读取数据 通用配置为

  1. codec 类型为 codec
  2. type 类型为 string 自定义该事件的类型 可用于后续判断
  3. tags 类型为 array 自定义该事件的 tag 可用于后续判断
  4. add_field 类型为 hash 为该事件增加字段

input plugin file

从文件读取数据 如日志文件 文件通常要解决几个问题

  1. 文件内容如何只被读取一次,即重启 ls 是,从上次地位持续读 -sincedb
  2. 如何读取到文件的新内容 定时查看文件是否更新
  3. 如何发现新文件并进行读取 定时查看文件
  4. 文件产生了归档 rotation 操作 是否影响以后的内容读取?不影响 被归档的文件内容能够持续被读取
  5. path 类型 为 数据 指定读取的文件门路 基于 glob 匹配语法

    1. path => [“/var/log/*/.log”]
  6. exclude 乐星为数据 排除不想监听的文件规定 基于 glob 匹配语法

    1. exclude => “*.gz”
  7. sincedb_path 类型为字符串 记录 sincedb 文件门路
  8. start_position 类型为字符串 beginning or end 是否从头读取文件
  9. stat_interval 类型为数值 单位秒 定时查看文件是否更新
  10. discover_interval 类型为数据 单位秒 定时查看是否有新文件待读取,默认 15 秒
  11. ignore_older 类型为数据 单位秒 扫描文件列表时 如果该文件上次更改事件超过设定时长,则不做解决,但仍然会监控是否有新内容
  12. close_older 类型为数值 单位秒 如果监听的文件超过该设定事件内没有新内容 会变为敞开文件句柄 开释资源 但仍然会监控是否有新内容 默认 3600 秒 即一个小时

codec plugin

codec plugin 作用域 input 和 output plugin 负责将数据在原始与 logstash event 之间做转换 常见的有

  1. plain 读取原始内容
  2. dots 将内容简化为点进行输入
  3. rubydebug 将 logstash events 依照 ruby 格局输入 不便调试
  4. line 解决带有换行符的内容
  5. json 解决 json 格局内容
  6. multiline 解决多行数据

codec plugin multiline

  1. pattern 设置行匹配的正则表达式 能够应用 grok
  2. what previous|next 如果匹配胜利 那么匹配行是归属上一个事件还是下一个事件
  3. negate true or false 是否对 pattern 的后果取反

filter plugin

filter 是 ls 功能强大的次要起因 能够对 logstashevent 进行风服的解决 例如 解析数据 删除字段 类型转换等 常见如下

  1. date 日期解析
  2. grok 正则匹配解析
  3. dissect 分隔符解析
  4. mutate 对字段解决 例如 重命名 删除 替换
  5. json 依照 json 解析字段内容到指定字段
  6. geoip 减少地理位置数据
  7. ruby 利用 ruby 代码动静批改 logstash event

date

  1. match 类型为数组 用于指定日期匹配格局 可一次指定多种日期格局

    1. match => [“logdate”, “MMM dd yyyy HH:mm:ss”,”MMM d yyyy HH:mm:sss”,”ISO8601″]
    2. target 类型为字符串 用于指定赋值的字段名 默认是 @timestamp
    3. timezone 类型为字符串 用于指定时区
正文完
 0