filebeat output redis 报错 i/o timeout
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了filebeat output redis 报错 i/o timeout,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1529字,纯文字阅读大概需要3分钟。
内容图文
![filebeat output redis 报错 i/o timeout](/upload/InfoBanner/zyjiaocheng/922/95011b154c754acca7b70aeac4cbc1ad.jpg)
filebeat output redis 报错 i/o timeout
先把报错内容贴出来。
ERROR redis/client. go:214 Failed to RPUSH to redis list with write tcp 172.16.73.32:54822->172.16.73.33:52611: i/o timeout ERROR redis/client. go:92 Failed to publish events: write tcp 1172.16.73.32:54822->172.16.73.33:52611: i/o timeout
报错内容是写入超时了。解析问题,第一可能性:是消息队列堵塞了,第二可能性是:连接redis 服务器的网络不太好。
1 redis消息队列阻塞
我的错误就是这个,我在logstash 进行读取redis 的时候配置出了问题,解析也出了问题,所以导致消息队列阻塞了,filebeat 也自然写不进去了。
解决办法:
先检查 logstash 的input的配置:
正确配置实例:
input { redis { host => "172.16.73.33" #redis ip port => "52611" #redis 端口 password =>"123456" #redis 密码 db => 9 # 指定redis 库 batch_count => 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: "123456"
key: "filebeat"
db: 9
timeout: 60 #添加这个参数,设置超时时间。
添加 timeout 参数 用来设置 超时时间。来减缓网络带来的影响。具体设置的数值根据你业务的情况进行设置。
内容总结
以上是互联网集市为您收集整理的filebeat output redis 报错 i/o timeout全部内容,希望文章能够帮你解决filebeat output redis 报错 i/o timeout所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。