0%

日志收集项目

日志收集项目

1 项目背景

每个业务系统都有日志,当系统出现问题时,需要通过日志信息定位和解决问题。当系统机器比较少时,登录到服务器上查看即可。当系统机器规模巨大,登录到机器上查看⼏乎不现实(分布式的系 统,⼀个系统部署在十几台机器上)。

2 解决方案

把机器上的⽇志实时收集,统⼀的存储到中⼼系统。 在对这些⽇志建⽴索引,通过搜索即可快速找到对 应的⽇志记录 通过提供⼀个界⾯友好的web⻚⾯实现⽇志检索与展示。

3 面临的问题

实时⽇质量⾮常⼤,每天处理几十亿条。 ⽇志准实时收集,延迟控制在分钟级别。 能够⽀持水平扩 展。

4 架构设计

项目架构

  • LogAgent:⽇志收集客户端,⽤来收集服务器上的日志
  • Kafka:⾼吞吐量的分布式队列
  • ElasticSearch:开源的搜索引擎,提供基于HTTP RESTful的web接口
  • Kibaba:开源的ES数据分析和可视化⼯具
  • Hadoop:分布式计算框架,能够对⼤量数据进行分布式处理的平台
  • Storm:⼀个免费并开源的分布式实时计算系统