filebeat output  redis 报错 i/o timeout

先把报错内容贴出来。

ERROR redis/client. go: Failed to RPUSH to redis list with write tcp 172.16.73.32:->172.16.73.33::   i/o timeout
ERROR redis/client. go: Failed to publish events: write tcp 1172.16.73.32:->172.16.73.33:: i/o timeout

报错内容是写入超时了。解析问题,在redis的服务的信息正常情况下,可能的问题,第一可能性:是消息队列堵塞了,第二可能性是:连接redis 服务器的网络不太好。

1 redis消息队列阻塞

我的错误就是这个,我在logstash 进行读取redis 的时候配置出了问题,解析也出了问题,所以导致消息队列阻塞了,filebeat 也自然写不进去了。

解决办法:

先检查 logstash 的input的配置:

正确配置实例:

input {
redis {
host => "172.16.73.33" #redis ip
port => "" #redis 端口
password =>"" #redis 密码
db => 9          # 指定redis 库编号
batch_count => 1     # 这个默认值125,指从redis一次性读取多少条数据,关于这个为什么设置为1,我在的另外一篇文章会写到。
data_type => "list" #数据类型
key => "filebeat" #key 值名称
   }
}

output 的配置也需要指定正确 ,否则输出不出去,也是会堵塞的。

检查 input 堵塞了还是 output  堵塞了,我们可以先让output 输出到控制台 ,然后看是否可以输出数据,可以的话就是 ouput  的配置有误。

反之则是我们的 input 获取不到消息队列 ,检查input 的配置是否正确。

2. 连接redis 网络不太好。

由于一些网络原因会导致我们连接redis 会超时 ,最后导致 io  timeout .我们可以在filebeat 里面进行设置超时时间来避免这一问题。

filebeat.yml

output.redis:
hosts: ["172.16.73.33:52611"]
password: ""
key: "filebeat"
db: 9
timeout: 60 #添加这个参数,设置超时时间,默认值这个是5。

添加 timeout  参数 用来设置 超时时间。来减缓网络带来的影响。具体设置的数值根据你业务的情况进行设置。

3. redis 版本过低。

官方建议的redis版本是2.6版本以上,所以如果我们是使用的redis 2.6  以下的版本,那么很大可能性就是版本导致的问题,我们可以使用2.6 以上的版本进行测试。看看是否是版本导致的问题。

redis的新版本安装文档:redis 安装 与错误

filebeat output redis 报错 i/o timeout的更多相关文章

  1. mac brew install redis 报错

    mac brew install redis 报错 /usr/local/opt/php55/bin/phpize /usr/local/opt/php55/bin/phpize: line 61: ...

  2. redis报错Windows error 0x70(a large memory)

    redis报错Windows error 0x70 redis 嫌弃你内存不够了,就给你不开第二个实例. The Windows version of Redis allocates a large ...

  3. Linux学习14-ab报错apr_pollset_poll: The timeout specified has expired (70007)

    前言 使用ab压力测试时候出现报错apr_pollset_poll: The timeout specified has expired (70007),本篇总结了几个ab常见的报错和对应解决办法 当 ...

  4. window下安装redis报错: creating server tcp listening socket 127.0.0.1:6379: bind No error

    window下安装redis报错: creating server tcp listening socket 127.0.0.1:6379: bind No error 解决: 如果没有配置环境,在安 ...

  5. Redis报错 : (error) NOAUTH Authentication required.

    原文:Redis报错 : (error) NOAUTH Authentication required. 这个错误是因为没有用密码登陆认证 , 先输入密码试试 . 127.0.0.1:6379> ...

  6. Windows安装redis报错处理(转!)

    要谈则谈,要打便打! ---2019.5.9,贸易战 转自:http://www.yayihouse.com/yayishuwu/chapter/1297 安装redis报错信息 [9204] 15 ...

  7. redis报错解决

    1.Connecting to node 127.0.0.17000 [ERR] Sorry, can't connect to node 192.168.1.917000 redis集群:Conne ...

  8. 安装Redis-cluster-gem install redis报错的解决方案

    错误描述: [root@eshop-cache01 local]# gem install redis ERROR: Loading command: install (LoadError) cann ...

  9. docker启动redis报错 oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo

    docker启动redis报错 1:C 17 Jun 08:18:04.613 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo1:C 17 Jun 08 ...

随机推荐

  1. MySQL 分表和分区

    1.为什么需要分表和分区 在开发的过程中,经常会遇到大表的情况,所谓的大表是指存储了百万级乃至千万级条记录的表.这样的表过于庞大,导致数据库在查询和插入的时候耗时太长,如果涉及联合查询的情况,性能更加 ...

  2. Fig 7.2.4 & Fig 7.3.2

    Fig 7.2.4 \documentclass[varwidth=true, border=2pt]{standalone} \usepackage{tkz-euclide} \begin{docu ...

  3. JQuery 的一个轻量级 Guid 字符串拓展插件.

    (function ($) { function guid(g) { var arr = new Array(); //存放32位数值的数组 if (typeof (g) == "strin ...

  4. BitAdminCore框架应用篇:(三)核心套件querySuite入门介绍

    索引 NET Core应用框架之BitAdminCore框架应用篇系列 框架演示:http://bit.bitdao.cn 框架源码:https://github.com/chenyinxin/coo ...

  5. [5.19 线下活动]Docker Meetup杭州站—拥抱Kubernetes,容器深度实践

    对本次线下活动感兴趣的朋友,欢迎点击此处报名,领取免费票. 今年3月,Docker刚刚过完5岁生日,五年期间,Docker也逐渐在技术和实践方面趋于成熟,更是在去年年底主动拥抱Kubernetes. ...

  6. day52 进程与守护进程

    http://www.cnblogs.com/Eva-J/articles/8253549.html 博客参考. 多进程聊天 守护进程. 多进程 1.Unix/Linux:fork()调用实现多进程. ...

  7. CentOS 6 - 升级内核

    有的时候,需要升级Linux内核,今天我就是在CentOS 6中升级内核,在没有升级内核之前,我的CentOS 6只有2.6.32这一个内核,也是默认启动的内核.下面就开始一步步操作升级内核了! 一, ...

  8. django 使用celery 实现异步任务

    celery 情景:用户发起request,并等待response返回.在本些views中,可能需要执行一段耗时的程序,那么用户就会等待很长时间,造成不好的用户体验,比如发送邮件.手机验证码等. 使用 ...

  9. django 获取request请求对象及response响应对象中的各种属性值

    django request对象和HttpResponse对象 HttpRequest对象(除非特殊说明,所有属性都是只读,session属性是个例外) HttpRequest.scheme 请求方案 ...

  10. MySQL密码修改(四)

    一.修改破解MySQL密码 1.1:修改密码 在知道原始密码的情况下 [root@web1 ~]# mysqladmin -uroot -p -S /home/mysql/3307/mysql.soc ...