最常用的两个输出插件:

  • redis
  • es

一、redis

1、用法

 output {
redis{
batch => false
batch_events => 50
batch_timeout => 5
codec => plain
congestion_interval => 1
congestion_threshold => 0
data_type => list
db => 0
host => ["127.0.0.1:6379"]
key => xxx
password => xxx
port => 6379
reconnect_interval => 1
shuffle_hosts => true
timeout => 5
workers => 1
}
}

2、配置项

以上所有配置项都是可选的,没有必须的。(以下4个红色配置是最重要的4个配置

  • 批处理类(仅用于data_type为list)

    • batch:设为true,通过发送一条rpush命令,存储一批的数据

      • 默认为false:1条rpush命令,存储1条数据
      • 设为true之后,1条rpush会发送batch_events条数据或发送batch_timeout秒(取决于哪一个先到达)
    • batch_events:一次rpush多少条
      • 默认50条
    • batch_timeout:一次rpush最多消耗多少s
      • 默认5s
  • 编码类
    • codec:对输出数据进行codec,避免使用logstash的separate filter
  • 拥塞保护(仅用于data_type为list)
    • congestion_interval:每多长时间进行一次拥塞检查

      • 默认1s
      • 设为0,表示对每rpush一个,都进行检测
    • congestion_threshold:list中最多可以存在多少个item数据
      • 默认是0:表示禁用拥塞检测
      • 当list中的数据量达到congestion_threshold,会阻塞直到有其他消费者消费list中的数据
      • 作用:防止OOM
  • data_type
    • list:使用rpush
    • channel:使用publish
  • db:使用redis的数据库,默认使用0号
  • host:数组
    • eg.["127.0.0.1:6380", "127.0.0.1"]
    • 可以指定port,会覆盖全局port
  • port:全局port,默认6379
  • key:list或channel的名字
    • 支持动态key,例如:logstash-%{type}
  • password:redis密码,默认不使用密码
  • reconnect_interval:失败重连的间隔,默认为1s
  • timeout:连接超时,默认5s

二、es

1、使用方式

 output {
elasticsearch {
hosts => ["127.0.0.1:9200"]
action => index
cacert => /xxx
codec => plain
doc_as_upsert => false
document_id => 1
document_type => xxx
flush_size => 500
idle_flush_time => 1
index => logstash-%{+YYYY.MM.dd}
keystore => /xxx
keystore_password => xxx
manage_template => true
max_retries => 3
parent => nil
password => xxx
path => /
proxy => xxx
retry_max_interval => 2
routing => xxx
script => xxx
script_lang => xxx
script_type => inline
script_var_name => event
scripted_upsert => false
sniffing => false
sniffing_delay => 5
ssl => false
ssl_certificate_verification => true
template => /xxx
template_name => logstash
template_overwrite => false
timeout => 5
truststore => /xxx
truststore_password => xxx
upsert => xxx
user => xxx
workers => 1
}
}

2、基本配置

以上配置全部都是可选的,没有必须的。以下列出最重要的几个。

  • hosts:["127.0.0.1:9200","127.0.0.2:9200"]
  • action:指定es的行为,indexdeletecreateupdate
    • 默认为index:index a document(该document就是一个来自于logstash的event)
    • delete:通过id删除一个document(需要指定document_id)
    • create:index a document(如果该document已经在index中存在,则失败)
    • update:通过id更新一个document
  • cacert:验证server合法性的.cer或.pem文件路径
  • codec
  • document_id
  • document_type
  • index:默认值:logstash-%{+YYYY.MM.dd}
    • 便于删除老数据
    • 在语法解析的时候,看到+号开头的,会自动认为后面是时间格式,尝试用时间格式来解析后续字符串。所以,之前处理过程中不要给自定义的字段起一个+号开头的名字
    • 索引名中不能有大写字母
    • 有时也会自定义为:logstash-%{servicename}-%{+YYYY.MM.dd}
  • user:进入es cluster的用户
  • password:进入es cluster的密码
  • timeout:Set the timeout for network operations and requests sent Elasticsearch. If a timeout occurs, the request will be retried.
  • flush_size:默认500,logstash攒够500条数据再一次性向es发送
  • idle_flush_time:默认1s,如果1s内没攒够500条还是会一次性将攒的数据发出去给es

第二章 logstash - 输出插件之redis与es的更多相关文章

  1. 第三章 logstash - 输入插件之tcp与redis

    常用的输入插件: tcp redis 一.tcp 1.用法 input { tcp { port => 4560 codec => json_lines mode => server ...

  2. Maven for Eclipse 第二章 ——安装 m2eclipse插件

    m2eclipse 是一个提供了 Maven 与 Eclipse 整合的插件.它的意图是桥接上 Maven 和 Eclipse 之间的缺口.通过 Maven 原型提供的简单直白的接口创建项目,它使 M ...

  3. ElasticSearch7.3学习(三十二)----logstash三大插件(input、filter、output)及其综合示例

    1. Logstash输入插件 1.1 input介绍 logstash支持很多数据源,比如说file,http,jdbc,s3等等 图片上面只是一少部分.详情见网址:https://www.elas ...

  4. Jenkins入门系列之——02第二章 Jenkins安装与配置

    2014-12-08:已不再担任SCM和CI的职位,Jenkins的文章如无必要不会再维护. 写的我想吐血,累死了. 网页看着不爽的,自己去下载PDF.有问题请留言! Jenkins入门系列之——03 ...

  5. 《驾驭Core Data》 第二章 Core Data入门

    本文由海水的味道编译整理,请勿转载,请勿用于商业用途.    当前版本号:0.4.0 第二章 Core Data入门 本章将讲解Core Data框架中涉及的基本概念,以及一个简单的Core Data ...

  6. 第二章排错的工具:调试器Windbg(上)

    感谢博主 http://book.51cto.com/art/200711/59731.htm <Windows用户态程序高效排错>第二章主要介绍用户态调试相关的知识和工具.本文主要讲了排 ...

  7. CentOS 7.4 初次手记:第二章 CentOS安装步骤

    第二章 CentOS安装步骤... 18 第一节 下载... 18 第二节 分区参考... 18 第三节 安装... 19 I Step 1:引导... 19 II Step 2:配置... 20 I ...

  8. 《细说PHP》第四版 样章 第二章 PHP的应用与发展 1

    <细说PHP>第四版 样章 第二章 PHP的应用与发展 1 学习任何编程语言之前,先了解一下它的应用与发展是很有必要的.从Web开发的历史看来,PHP.Python和Ruby几乎是同时出现 ...

  9. 第三章·Logstash入门-部署与测试

    1.Logstash环境准备与安装 Logstash环境准备 关闭防火墙 #CentOS6 关闭防火墙 [root@elkstack01 ~]# /etc/init.d/iptables stop # ...

随机推荐

  1. 迈出第一步,Hexo博客搭建

    很早之前看到别人的博客就总想着自己之后也要搭一个,最近突然来了干劲,就开始搭起了博客.不过搭博客还真是一个累活,失败了不下十次,用了好几天的时间,感觉自己在浪费时间,但是看到现在博客终于能用了,非常开 ...

  2. 1,EasyNetQ-链接到RabbitMQ

    一.链接到RabbitMQ 1,创建连接 注意不能有空格 var bus = RabbitHutch.CreateBus(“host=myServer;virtualHost=myVirtualHos ...

  3. 安装 intelliJ idea 。 快速学会kotlin

    用户界面主题 - 默认插件-功能插件 调整 idea 到你的任务 idea 有 许多 工具 可用 通过 默认. 你能够设置 你需要的. 跳过 剩下的 设置默认 . 回到 用户界面主题. 下一步:功能插 ...

  4. bzoj4001: [TJOI2015]概率论

    题目链接 bzoj4001: [TJOI2015]概率论 题解 生成函数+求导 设\(g(n)\)表示有\(n\)个节点的二叉树的个数,\(g(0) = 1\) 设\(f(x)\)表示\(n\)个节点 ...

  5. Windows 7 MBR的修复与Linux产品正确卸载

    这几天折腾系统很令人崩溃,但也明白了开机引导流程具体如何. 觉得Centos 7不好用,想卸载Redhat安装Ubuntu,为了图方便直接把红帽的硬盘区格式化了.于是开机引导崩溃,咨询了下大神,大神叫 ...

  6. 移动端web,tap与click事件

    一.tap与click的区别 两者都会在点击时系统自动触发,但是在手机WEB端,click会有 200~300 ms.延迟来自判断双击和长按,因为只有默认等待时间结束以确定没有后续动作发生时,才会触发 ...

  7. [Go] Cookie 使用简介

    Golang 的 Cookie web 开发免不了要和 cookie 打交道.Go 的 http 库也提供了 cookie 的相关操作. type Cookie struct { Name strin ...

  8. Yarn中ResourceManager的RPC协议

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemNjXzAwMTU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA ...

  9. HTML一些标签注意事项

    最近在IE10下运行一个以前的做web系统发现了两个小问题: 一.图片上使用"alt"属性来添加一些文字提示信息在IE10下无法正常显示出来 上网查了一下原因:原来是现在一些较新的 ...

  10. AutoMapper在MVC中的运用05-映射中的忽略、处理null、多种映射转换

    本篇AutoMapper使用场景: ※ 动态实现接口方法或属性 ※ 目标中的属性如果比源多,可以忽略多出的属性 ※ 目标有virtual属性,可忽略 ※ 目标属性值为null的解决办法 ※ int转s ...