登录

首页 \ 课程列表 \ 天眼Java大规模分布式跟踪监控系统
课程介绍

项目简介

 本项目对java、scala等运行于jvm的程序进行实时日志采集、索引和可视化,对系统进行进程级别的监控,对系统内部的操作进行策略性的报警、对分布式的rpc调用进行trace跟踪以便于进行性能分析。

核心技术

• 了解zookeeper、kafka和es-sql的使用

• 掌握多种log框架的自定义appender

• 掌握日志实时收集

• 掌握日志索引设计

• 掌握事件日志索引设计

• 掌握如何从业务层面保证kafka消费的有序性

• 掌握监控报警的埋点设计

• 掌握如何自定义hbase的spring boot starter并加入埋点

• 掌握高效分布式唯一ID生成策略

• 掌握谷歌dapper论文概念和本项目的rpc设计

• 掌握基于dubbo修改源码实现rpc跟踪

适合人群

 Java程序员 1~5年开发经验

开发语言

 Java、Scala、Python、前端技术

开发环境

软件和框架

软件名

版本

备注

idea

2016.3.1

IDE自由选取

spring boot

1.5.6.RELEASE


mysql

5.5+


elasticsearch

2.3.3


kafka

0.10.0.1

如果spark的版本较低,那么需要将kafka的日志的格式降低,具体在kafka的配置项加入:log.message.format.version=0.8.2,该项按需配置

jdk

1.7+


zookeeper

3.4.6


rabbitmq

3.5.7


hbase

1.0.0-cdh5.4.0+

不支持1.x以下的版本,比如0.9x.x

gradle

3.0+


hadoop

2.6.0-cdh5.4.0


spark

1.3.0-cdh5.4.0+


redis

3.x

单机版即可

服务器

 由于该项目使用的都是分布式的架构,并且组件都是分布式的框架,所以应当根据生产环境实际场景的日志量来部署,测试环境一台机器即可部署(需要有个小的hbase集群)。该项目测试下来3台pc大概能每秒实时索引2w-2.5w的日志,每秒实时处理50w+条日志,每秒能够处理rpc数据3w+条,并且随着集群的增大数据处理能力线性增长。

项目架构:

QQ图片20171020153242.png

项目功能

• 日志实时采集

• 日志实时页面实时展示(支持关键字过滤)

• 历史日志查询(支持多种条件过滤,支持sql语句查询)

• app实时部署位置展示(机器和文件夹)

• app实时日志采集状态展示

• app历史部署位置展示

• api请求实时统计和历史统计

• 第三方请求实时统计和历史统计

• rpc调用链展示(支持多种条件检索)

• 系统上下线报警

• 系统内嵌采集器报警

• 中间件、api、第三方、job执行异常报警(策略报警和异常报警)

课程安排

 时间:2017年10月16日-2017年10月24日 20:30-22:00

第一节课:项目架构与技术点讲解

• 项目介绍

– 项目功能

– 项目技术点

• 项目演示

• 架构详解

• zookeeper讲解

• kafka讲解

• es和es-sql讲解

第二节课:日志实时采集

• 项目注册中心设计讲解

• 自定义log框架的appender

– 日志采集器设计

– 自定义logback的appender详解

• 日志索引

– 索引设计

– 日志消费存储

– kafka消费有序性

• 接下去TODO

第三节课:监控报警详解

• 系统上下线报警

• 内置采集器状态报警

• 事件日志设计

– 索引设计

– 埋点设计

• 事件数据采集

• api监控

– 请求失败报警

– 请求耗时报警

– 实时api请求展示

– 如何埋点

• 中间件监控

– 请求失败报警

– 请求耗时报警

– 自定义hbase的spring boot starter并加入埋点

• 第三方监控

– 请求失败报警

– 请求耗时报警

– 实时第三方请求展示

– 如何埋点

• job执行监控

• 接下去TODO

第四节课:分布式rpc跟踪详解

• 谷歌dapper论文介绍

• snowflake算法介绍

• 设计并实现高效的分布式唯一ID生成策略

• 采样率设计

• rpc跟踪设计

• 接下去TODO

第五节课:基于dubbo实现rpc跟踪和项目搭建

• 基于dubbo修改源码实现rpc跟踪

• 项目打包

• 项目部署

• 如何对接

– 注意点

– 日志采集对接

– 埋点对接

教学方式

 小班教学:仅限30个名额,报完截止!

教学老师

 图灵学院老师-大牙

 中国银联子公司大数据工程师,先后参与过公司数据平台的设计开发、营销系统设计开发,目前专注于apm项目,带领公司团队开发监控平台。

报名地址:https://ke.qq.com/course/247133

报名qq:895900009


查看更多∨