kafka的优点,我想大家应该知道…. 一个可以支撑大流量的消息系统, 要比redis靠谱点,毕竟人家数据可以落地硬盘…


现在所有的日志都通过logstash收集到了elasticsearch里面。 我们可以通过kibana来进行查看各种日志报表,但是问题是我们如何针对某些异常进行告警…   比如我临时要过滤些条件,比如出现某种ERROR,又或者爬虫服务的xx.com出现了大量的超时,某些页面因为改版,导致我们抓不到他的具体信息了。


文章写的不是很严谨,欢迎来喷,另外该文后续有更新的,请到原文地址查看更新. 

http://xiaorui.cc/2015/04/05/logstash%E8%81%94%E5%90%88python-kafka%E8%BF%9B%E8%A1%8C%E5%BC%82%E5%B8%B8%E6%95%B0%E6%8D%AE%E7%9B%91%E6%8E%A7%E6%8A%A5%E8%AD%A6/


对于kafka服务端的安装是有些麻烦的,另外它是需要zookeeper协同调度的。   我这边就不说kafka安装流程了,大家自己找个文档搞搞就行了。 我们的模块都是在docker服务器上,就顺手也pull了一个docker化的kafka和zookeeper。 

下面的是logstash相关的配置,我们以前是直接在agent端把output扔到es里面,随着量级的增大,就改放到了redis里做broker消息队列。  现在要利用kafka做发布,那么我们只需要加入kafka就可以了。 


这里有人可能疑惑了,为毛不直接解析进行监控?  直接Elasticsearch? 你怎么知道什么时候会出现某个条件的异常?  难道要实时的去query es?   大家要知道logstash很好的帮助大家做好了日志的切分,tail,offset机制。

这是output输出

上线是关于logstash里面关于kafka的input output的配置,我们再来看看同时订阅kafka broker的python程序是如何跑的。   具体代码我就不贴了,你可以通过一个demo很容易进行扩展. 

另外python kafka里面是支持多个consumer的,  要注意kafka的分区数量.

本来是想写监控跟报警的…. 就先这样了,文章写得有些乱.   主题是,推荐大家使用kafka替换redis,如果出现后端的存储出现问题,那么就需要使用redis内存抗住数据…. kafka明显更合适.



对Python及运维开发感兴趣的朋友可以加QQ群 : 478476595 !!!
{ 2000人qq大群内有各厂大牛,常组织线上分享及沙龙,对高性能及分布式场景感兴趣同学欢迎加入该QQ群 }

另外如果大家觉得文章对你有些作用!   帮忙点击广告. 一来能刺激我写博客的欲望,二来好维护云主机的费用.
如果想赏钱,可以用微信扫描下面的二维码. 另外再次标注博客原地址  xiaorui.cc  ……   感谢!

使用kafka扩展python logging集中式日志收集

昨天跟你朋友聊了下他们的日志收集及实时的触发报警,当然需要说明的是他们的环境不大,一个小创业公司,开发和运维的环境也相对的简单干练… …...

阅读全文

3则回应给“logstash联合python kafka进行异常数据监控”

  1. 多宝鱼说道:

    这跟报警有毛关系

  2. Addbook说道:

    顶一个….我也做了了一套,不过使用kafka-spark-hdfs,报表写到mongodb中

  3. 运维说道:

    感觉思路相当的不错,感觉在架构上又复杂了

发表评论