10 | 实战 1:从 0 到 1 建立系统应用的可观测性
翁一磊
你好,我是翁一磊。
在前面的课程里,我们学习了很多可观测性的理论知识。那基础打好了,接下来就要真刀真枪地建立系统开始实战了。
这节课,我会基于一个典型的 Spring Cloud 的应用,给你讲解如何从 0 到 1 来构建端到端的全链路可观测性,如何打通可观测性数据的联合。
实战业务系统简介
我们这个实战项目采用的系统是若依系统,这是一套开源的后台管理系统,同时也是一个 Java EE 企业级快速开发平台,它由多个微服务组成,内置模块诸多,如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、通知公告等。如果需要项目的开源地址和演示地址,你可以点开链接查看。
若依系统的架构主要包括下面几类。
Web 页面:放置在 Nginx 中。
注册中心:Nacos。
网关:Gateway。
服务模块:Auth、System。
数据库:MySQL。
缓存:Redis。
项目中涉及的技术栈如下表所示:
提醒一下,我们为了构建可观测性实战选择的是单机 Jar 包版应用,它可以将所有服务模块都部署在同一台服务器上,利用不同端口对服务进行访问。
建立业务系统的可观测
概述
接下来,我们就一起针对若依这个系统建立可观测性。市面上有不少的开源工具可供选择,但是从某种意义上来说,目前并没有一个开源工具能够完整地解决可观测性的问题,基本都需要把多个工具拼凑到一起来用。在遇到一些业务问题时,仍然需要访问不同的工具来分析问题,相关的日志、链路以及指标数据也没有很好地融合,这样的操作并不能有效减轻运维以及开发人员的分析调试成本和沟通成本。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文详细介绍了如何建立系统应用的可观测性,以Spring Cloud应用为例进行实战演练。作者首先介绍了选用的开源系统——若依系统的架构和技术栈,然后详细讲解了如何建立业务系统的可观测性。通过观测云,读者可以学习如何采集Nginx、MySQL、Redis和JVM等技术栈相关的指标和日志,并将这些数据有效地关联起来。文章还介绍了在Nginx、MySQL、Redis和JVM中配置数据采集的步骤,以及如何配置日志采集并进行结构化处理。此外,文章还涵盖了应用性能监测(APM)和用户访问监测(RUM)的内容,以及如何实现RUM与APM数据打通和日志与APM实现关联。通过这些内容,读者可以快速了解如何利用观测云建立系统应用的可观测性,从而更好地分析和定位问题,提高工作效率。整体而言,本文为读者提供了全面的指导,帮助他们建立系统应用的可观测性,为系统性能及稳定性保障提供支持。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《深入浅出可观测性》,新⼈⾸单¥29
《深入浅出可观测性》,新⼈⾸单¥29
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(4)
- 最新
- 精选
- 李林实战这两篇感觉更像是在介绍一款软件,而不是讲解可观测性本身。 我自己希望了解的是更中立的解决方案,而不是只能依靠某个特定的商用软件才能实现的可观测性。 对于付费技术文章来说,更委婉的小范围的有技巧的讲解商用软件特长优势是不是更稳妥?
作者回复: 感谢反馈!其实在写这几篇的时候,也确实考虑过这个问题。中立软件主要是开源软件了,但目前确实还没有能够比较完整的构建可观测性的,可能需要几个工具每个来负责一块;OpenTelemetry 的话,在第 4 讲里面有专门的介绍。所以在实战的环节,是想借助一些 demo 系统,以及能够比较系统性地展现可观测性的软件或工具,来整体做一些阐述。另一方面,选择的软件也是可以免费注册,全功能使用,主要是可以更直观的来看一下效果。
2022-10-09归属地:上海912 - 🏀CeezyRUM 这里有针对 App 的例子吗? App 如果要加入到可观测性中,业界有哪些解决方案或工具吗?
作者回复: RUM 这块的例子会在后续实战的章节中讲解
2023-02-20归属地:广东 - singer_wang请教翁老师,可观测性是应用系统自身的一个属性,那么应用系统开发应该如何做,做到什么程度,才能说这个应用系统的可观测性强呢?
作者回复: 这块可以再回顾一下第 7 讲,主要在介绍可观测性驱动的开发
2022-10-09归属地:上海2 - ENginx 那一段的 “acces.log” 应该是 “access.log”
作者回复: 感谢指出,已修改
2022-10-05归属地:上海
收起评论