• 使用logstash收集日志的可靠性验证


        实时计算里,需要对日志实时收集,logstash可以做到。目前的版本是1.4.2,官方文档在http://www.logstash.net/docs/1.4.2/,里面有详细的配置说明,使用也很简单。这里主要对logstash的可靠性做了简单的验证

    intput为file,kill掉logstash进程

        每100ms打印一条日志,用logstash读取;每隔20s杀掉logstash进程,又重启。发现logstash会有高概率重发日志,也有少量发送空消息,要注意代码中要过滤重复消息和空消息

    关闭output

    1. output为redis,kill掉redis后,logstash向redis的写操作会阻塞。等到redis恢复后,会接着写,不会丢数据
    2. output为kafka,使用logstash-kafka这个插件(https://github.com/joekiller/logstash-kafka)。kafka通常是集群,kill掉其中一个进程,会有短暂的kafka服务不可用,logstash侧会做失败重试,只要重试次数足够多,不会丢数据;如果kafka所有进程都kill掉,logstash侧还是会一直重试,超过上限阈值后,就会丢弃数据,这里就会存在丢数据的可能

    logstash单点

        一台服务器一般只允许一个logstash进程,如果进程挂掉了,没有自动恢复机制,要想办法手工拉起它

    小结

        这里只试验了input为file的情况,总的来说logstash不会少传数据,但有可能多传

  • 相关阅读:
    易语言破解与安装
    用 AS3.0 的 fscommand 命令调用 .exe 文件。
    swf批量导出
    pureMVC java版搭建流程
    PureMVC 框架总结收录
    一些算法
    练习3.34
    关于数组的注意事项
    练习3.30、3.33
    练习3.27、3.28、3.29
  • 原文地址:https://www.cnblogs.com/todsong/p/3918359.html
Copyright © 2020-2023  润新知