大数据平台用户日志采集与实时监控系统的设计与实现
作者单位:山东大学
学位级别:硕士
导师姓名:彭朝晖
授予年度:2020年
学科分类:12[管理学] 1201[管理学-管理科学与工程(可授管理学、工学学位)]
摘 要:在移动端设备与应用飞速发展的当下,各类互联网服务大数据平台繁荣发展,大数据平台上的海量用户会产生大量的日志数据。如何对系统端与终端分散的海量用户日志数据进行采集与实时监控,实时关注日志中的各项重要指标,成为大数据平台企业所必须要解决的问题。通过对日志数据的监控,可以即时了解企业大数据平台的设备系统情况,对可能发生的故障进行检测和排查,可以优化业务流程,为平台用户提供更好的服务。目前大数据平台在用户日志处理方面面临如下几个主要的问题:(1)需要更符合企业实际业务需求,如保证高吞吐量、可靠数据传输等特性的系统,完成对日志的采集、清洗和存储工作;(2)对实时日志数据的接入管理不便,难以对日志历史数据进行简易有效管理,从而影响到上层数据查询和统计分析计算效率;(3)当前通用实时监控告警业务开发联调周期较长,需要一个系统工具来实现灵活、高效的日志数据监控任务。本文首先阐述了日志采集与实时监控系统在当前大数据环境中对于大数据平台企业的意义与相关应用,然后从大数据平台企业对用户日志数据采集和有效监控的需求出发,探究分布式的日志采集与实时监控系统架构所必需的原则特性;接着设计了系统的功能架构、技术架构和网络架构,并进行了系统所用开发工具的技术选型。最后对系统的各个模块功能进行详细阐述,结合系统的架构与详细设计实现了日志采集与实时监控系统。系统总体可分为后台日志数据采集、清洗和存储部分以及前台用户日志管理和监控部分,其中前台部分可分为作为基础的连接管理模块、进行日志数据接入和数据管理的Druid数据源配置模块、以及进行监控任务、监控脚本创建的监控任务配置模块。本文所涉及的日志为应用系统通过日志策略定义的自定义日志,后台数据处理组件可完成日志数据采集、清洗和存储的整体流程,同时开发人员可通过该系统前台Web端将日志数据从Kafka消息系统接入到实时计算引擎Druid并管理,以供后续监控任务或实时查询;对于接入的日志数据可进行日志监控任务的创建,生成监控脚本并部署到Airflow工作流平台,完成对实时日志数据的周期性查询与告警工作。本文使用线上测试环境对日志采集与实时监控系统进行测试,达到了预期的设计目标。本系统已在国内某大型互联网企业的大数据平台上线,系统较好实现了分布式环境下对用户日志数据源的管理,以及对用户日志实时监控任务的有效配置,方便的满足了企业开发人员对于用户日志数据管理与实时监控的业务需求。