摘要:互联网的迅猛发展以及大数据相关技术的兴起,使得日志数据的规模呈爆炸式增长,给已有的日志采集及分析系统带来了挑战。如何有效地收集并分析这些日志已经成为了这一领域的热点,所以设计一款可扩展、高容错的分布式日志收集系统是时下一个非常重要的研究课题。
本文基于开源的分布式日志Apache Flume,主要介绍了日志收集系统的设计与实现过程。此系统主要包括了服务器上的日志生成、使用Flume进行日志收集、将日志数据存储至数据库中。首先,本文介绍了此系统主要的基本理论基础以及运行此系统所需要的环境配置。然后,文章分析了设计这一系统的需求和流程定义,并设计和分析主要的Flume配置。最后,本文介绍了系统的主要实现过程,并设计出一个生成日志数据的小程序对系统进行了测试与调试,提出改进方向。
关键词 apache flume;日志收集;分布式;java
目录
摘要
Abstract
1 绪论-1
1.1 课题的研究背景及意义-1
1.2 国内外的研究现状-1
1.3 文章主要的设计内容及思路-1
1.4 论文的主要结构安排-2
2 相关的理论及主要技术-3
2.1 Flume-3
2.2 虚拟机VMware Workstation 12 Pro-4
2.3 Linux-5
3 系统的需求分析及系统设计-7
3.1 需求分析-7
3.2 可行性分析-7
3.3 Java环境设置-7
3.4 系统设计-8
3.4.1 日志收集数据流程定义-8
3.4.2 服务器中Flume的配置-9
4 系统实现-10
4.1日志收集系统flume的实现-11
4.2 系统实现流程-12
5 系统的调试与测试-12
5.1 测试方案-13
5.2 系统结果测试-14
5.3 问题与改进-15
结论-15
致谢-16
参考文献-17
附录-18
附录1 flume的配置-19
附录2 测试数据生成程序-20
附录3 配置程序-21