presto + kafka + logstash 实时监控分析nginx日志


前言

目前线上环境nginx日志一天10亿左右,日志已经实时放入kafka队列中,想实时监控分析, 首先,理清我们的需求:

1.实时监控 reponse的情况
2.实时监控 request path 的流量变化
3.实时监控 请求时间
4.从request 里面解析其中的参数,监控变化量

上面最难的是从request解析指定的字段出来做监控,这里必须经过一次解析后才能做统计

想了几种方案:

  1. 最先想到的是搭建ES集群,利用ES集群实现实时聚合搜索
  2. 利用现在流行的flink spark storm 等实时流处理方案
  3. 利用现有的presto ,实现presto on kafka

一、方案选取

根据我们现有的实际情况,不方便增加更多的机器,也没有人专门写代码,所以选择了第3种
 kafka -->  logstash --> kafka  --> presto 

二、各项配置

1.logstash配置

配置文件如下:


# 我们的nginx日志是按照竖线分割的  xx|xx|x|x|
input {
   
	kafka {
   
		topics   => "nginx"
		group_id => "logstash"
		bootstrap_servers => "192.168.x.xx:9092"
		codec => "plain"
	}
}

filter{
   
# 提取需要的字段,不是每个字段都用到了
  mutate {
   
        split => {
    "message" => "|" }
        add_field => {
    
            
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值