这门课解决什么问题:把散落的日志串成可追踪的链路

后端开发和排查线上故障时,最让人头疼的不是代码报错,而是请求在多个服务之间跳转后,日志变成了一盘散沙。一个前端请求可能经过网关、订单服务、库存服务,每个节点都在各自打印日志,一旦出问题,很难把同一笔请求的完整轨迹拼凑出来。这门基于 Java 日志平台的访问链路追踪实战课,解决的就是这个具体场景。它不教你写业务代码,而是从日志的生命周期切入,讲清楚日志从代码里打印出来,经过中间件采集、传输、存储,最终在平台上被串联成完整调用链的全过程。学完之后,你能理解为什么一个项目里会同时出现四五种日志框架的历史包袱,以及如何用统一的方案把它们治理顺。

适合什么基础,建议先看哪几块

这门课适合已经能独立写 Java Web 应用、至少用 Spring Boot 做过两三个接口的读者。如果你连依赖注入和基础注解都还没理清,建议先补基础再看。课程前半段花了大量篇幅梳理 Java 日志体系的发展脉络,从早期的系统日志到 log4j、JUL、JCL,再到 logback、slf4j 和 log4j2。这段内容看起来像历史课,但它是理解后续中间件配置的关键。建议先集中看日志体系概述和几个框架的代码实例展示,重点对比 slf4j 作为门面与其他实现框架的配合关系。搞清楚这一点,后面配置中间件采集规则时才不会一脸茫然。如果时间紧,配置详解那部分可以边动手边回看,不必一次性硬记。

学完能独立做什么,资料怎么配合练习

学完之后,你应该能在自己现有的 Spring Boot 项目里独立接入一套链路追踪方案:给每笔请求打上唯一 traceId,让这个 ID 随日志自动透传到下游服务,最终在日志平台上按 ID 检索出完整调用链。这不是装个依赖就完事,涉及日志框架适配、中间件采集配置、过滤规则编写等多个环节。资料配合练习的方式建议这样安排:先跟着视频里的 log4j 和 logback 实例代码,在自己本地起一个最小项目,手动改几轮配置文件,观察不同级别和格式的输出差异;然后再引入课程后半段讲的中间件工具,把本地单应用的日志推送到采集端。整个过程不要只是跟着敲,每改一处配置就触发一次请求,对比平台上的检索结果和本地控制台输出,这样才能真正理解每个环节在链路里起的作用。


课程系统介绍了日志的生命周期。课程从日志工具基础知识入手,介绍了相关的日志组件发展历程和基本配置,然后介绍后续日志环节的各个中间件工具,最后从实战角度,依据前面

课程目录

*   第一章 日志专题-java日志体系基础/

  *   课程介绍/

    *   01.课程简介及学习目标

  *   体系概述/

    *   02.java日志体系概述

  *   发展历程/

    *   03.系统日志与log4j日志简介

    *   04.log4j实例代码展示

    *   05.jul的诞生与代码展示

    *   06.jcl的历史背景与简介

    *   07.jcl面向接口代码风格展示

    *   08.jcl的优缺点与解决方案

    *   09.logback的历史和编码风格

    *   10.slf4j与其他日志的配合与总结

    *   11.log4j2的配置与日志发展历程总结

  *   配置详解/

    *   12.日志组件配置概述

    *   13.jul配置文件与级别

    *   14.jul打印级别与其他配置项

    *   15.log4j配置文件与配置项

    *   16.log4j的appender及pattern格式

    *   17.logback配置及官方文档使用

    *   18.logback配置自动刷新

    *   19.jcl配置及实现类优先级

    *   20.commons-logging配置文件验证

    *   21.jcl日志输出级别

    *   22.log4j2配置介绍及官方文档使用

    *   23.sl4j配置与项目搭建

    *   24.slf4j日志实现规则验证

    *   25.slf4j日志环

  *   java日志总结/

    *   26.java日志总结

*   第二章 日志专题-日志平台搭建/

  *   中间件概述/

    *   01.日志中间件概述

    *   02.常用中间件类比

  *   ES搭建与相关工具/

    *   03.ES简介

    *   04.ES配置与启动01

    *   05.ES配置与启动02

    *   06.ik分词器的安装与使用

    *   07.eshead启动与验证

    *   08.eshead基本功能展示

  *   logstash搭建与配置/

    *   09.logstash简介与配置

    *   10.logstash采集验证

  *   kibana搭建与使用/

    *   11.kibana的配置与启动

    *   12.kibana的日志配置与基本使用

  *   kafka与相关工具/

    *   13.kafka启动与配置

    *   14.kafka的启动验证与命令行工具

    *   15.logstash通过kafka通道采集

    *   16.kafka-manager配置与启动

    *   17.kafka-manager的使用

  *   filebeat的使用/

    *   18.filebeat配置与启动

    *   19.filebeat采集数据通道验证

    *   20.logstash配置对filebeat的json解析

  *   平台搭建小结/

    *   21.中间件小结

*   第三章 日志专题-项目设计与搭建/

  *   项目概述/

    *   01.项目实战之需求概述

    *   02.项目实施的设计目标

  *   系统设计/

    *   03.采集变量与前端设计思路

    *   04.后台java及微服务设计

    *   05.采集平台拓扑

  *   微服务框架搭建/

    *   06.项目模块划分

    *   07.nacos启动与使用

    *   08.借助spring工具生成父pom

    *   09.maven工具生成web基本结构

    *   10.web子模块的boot配置

    *   11.web启动与nacos注册

    *   12.user模块创建与启动

  *   utils项目搭建/

    *   13.utils与logbean

    *   14.LogBean的日志打印

  *   第三方kafka集成/

    *   15.logback-kafka的组件说明

    *   16.logback-kafka日志组件的集成

    *   17.logback-kafka启动验证

    *   18.user集成kafka

  *   自定义kafka日志集成/

    *   19.自定义实现kafkaAppender

    *   20.kafka的基本参数配置

    *   21.自定义KafkaAppender的使用

    *   22.自定义Appender验证与总结

    *   23.user集成KafkaAppender

  *   项目搭建总结/

    *   24.总结

*   第四章 日志专题-链路追踪项目开发/

  *   前端日志收集/

    *   01.openresty的下载与启动

    *   02.集成lua-kafka及验证

    *   03.from来源追踪

    *   04.lua生成requestid

    *   05.lua生成terminalid

    *   06.获取ip与url

  *   后端日志生成/

    *   07.微服务启动与转发

    *   08.filter拦截与验证

    *   09.CommonUtils工具类

    *   10.变量值的填充

  *   微服务内部传递/

    *   11.threadlocal的定义与使用

    *   12.threadlocal上下文验证

    *   13.切面和注解定义

    *   14.切面的使用与验证

    *   15.乱序产生的原因与解决

    *   16.乱序问题验证

  *   跨服务传递/

    *   17.远程调用场景代码

    *   18.跨服务验证与问题追踪

    *   19.自定义RestTemplate

    *   20.自定义RestTemplate验证

  *   用户登陆信息采集/

    *   21.用户登录与sid的创建

    *   22.sid的使用与打印验证

    *   23.前端请求用户信息追踪

  *   演示与总结/

    *   24.整体测试与追踪演示

    *   25.总结