在京东如何做好前端系统的可观测性

时间:2022-03-25 01:00:48

作者:京东科技 王亚森

前言

本文旨在从0到1的讲述一下我们团队在做系统可观测性过程中所沉淀下来的一整套解决方案,收效甚巨,不敢苟藏,当公之于众,共建吾辈光明之未来。

先讲一下我们从中得到的好处:

1,当我所负责系统宕机时我能第一时间得到通知

2,当我写的业务逻辑进入else或者catch时它会通知我

3,当我新做了一个产品功能上线后,我可以监控用户的访问情况

4,我不会再担心早上没到公司就收到同事的电话说昨晚上线的应用要回滚

5,发现新做的功能上线后有问题,可以第一时间在线将功能切换至老版本运行

6,不管有没有发生问题我都可以还原用户的操作轨迹查找问题

7,老板说我们好久没出生产事故了



下面内容比较干,建议请提前备好茶水,一起赏用更佳



一、介绍

何为系统可观测性?

可观测性是一种系统属性,如功能性或可测试性。通过收集和分析系统的运行状态以及系统所承载的业务状态,用一种可以让人理解的形式展示出来,以供我们对系统的运行情况做出合理的判断。



我们要观测什么?

通用部分:从硬件运维(cpu, meomery, disk)与 软件应用可访问性 与 应用性能几个方面进行监控。

业务部分:从页面正常初始化,业务可交互性,交互流程完整性 方面进行监控。



我们以集团内部现有的工具进行说明如何来做,而工具实现的技术手段不在本篇文章职责之内。



二、观测指标

系统指标

服务器运行状态

cpu 占用率

内存占用率,

硬盘 使用率

nginx 启停状态

应用指标

1. 白屏, 因系统错误导致的白屏