稳定性-从端到端观测开始

稳定性-从端到端观测开始

上一篇:稳定性-从稳定性架构说起 ,我们聊到了从对象+活动的模式出发,识别稳定性保障对象的上游、下游,明确谁会影响到我、我会影响到谁;从场景出发穷举可能的影响程度,建立起分布式系统中的认知。

什么是端到端观测

当我们识别出了稳定性保障对象的前、后、左、右对象之后,就像围棋中的棋子的"气"一样,那么这些"气"在实际业务活动中是如何流转的呢?从哪里开始、经过哪些节点、最终在哪里结束,这样包含全部调用过程的路径,我们称之为端到端,这是基本的观测原则。要想确保稳定性就需要覆盖全部的端到端节点,这些节点就是观测的范围。

观测的三个层次

搞清楚了确定观测对象范围的基本原则之后,我们需要定义观测的三个主要层次:

  • 业务层次
    业务层次是差别最大的,不同的业务观测指标完全不同。但是,确定哪些指标需要成为业务指标也是有一定的基本原则的:
    1)有哪些调用来源,比如根据渠道来,微信小程序、网站、App 等等
    2)有哪些服务场景,比如注册、登陆、搜索、推荐、下单、支付、物流等等
    针对具体的来源+场景,通常需要建立调用量(qps/tps)、成功率(successRate)、耗时(tp99)、错误数(errorCount)
  • 应用层次
    应用层次相对比较简单,通常是
    1)调用量(qps/tps)、成功率(successRate)、耗时(tp99)、错误数(errorCount)四个指标阈值
    2)调用量(qps/tps)、成功率(successRate)、耗时(tp99)、错误数(errorCount)四个指标波动
    这里的波动通常需要跟上一个时刻比,跟前一天/周/月相比
  • 技术层次
    技术层次更多是从资源供给角度进行监控,主要是
    1)资源利用率,CPU、Mem、Storage、Network 四个主要资源的利用率
    2)资源使用成功率,如 Pod 创建成功率
    3)资源使用效率,如 K8S Pod 调度时长、Pull Image 时长
    4)资源虚拟化率,如 CPU、Mem 超卖比例

观测的三个核心维度

观测的三个核心维度:

  • Log,日志是最基本的观测数据载体
  • Metric,指标是基于日志计算出的各种统计维度
  • Trace,链路是分布式系统中观测的最核心要素

1)基于对服务场景的梳理,从请求开始到请求结束,每个环节的异常都需要打印日志,便于在线诊断。

2)对于限流、熔断等规则生效时,也需要打印日志,便于从监控感知。

3)业务异常时,打印关键字日志,便于从监控感知

相关推荐
十碗饭吃不饱3 小时前
后端运维:网络联通、进程查询、Java服务启动脚本
java·运维·网络
好用斋3 小时前
拾光坞安装网盘聚合LitePan:把Docker命令翻译成图形界面
运维·docker·容器
贝锐5 小时前
金仓、达梦、TDSQL全适配:向日葵补齐信创数据库层远程运维能力
运维·数据库·信创
雪落漂泊7 小时前
Linux进程(四)概念:命令行参数和环境变量篇
linux·运维·服务器
方便面不加香菜7 小时前
Docker Container -- 容器命令详解
运维·docker·容器
say_fall8 小时前
【Linux系统编程】Linux进程信号:从“外卖到了“到内核里的一张位图
linux·运维·服务器·车载系统·智能硬件
Z21-X9 小时前
云原生运维实战笔记:企业网站综合上云部署与云运维服务全景解析
运维·笔记·学习·云原生
Decay__9 小时前
19_MySQL 告警与自动化运维 —— 告警分级收敛 / Webhook / 定时巡检 / 脚本库
运维·数据库·sql·mysql·架构
FungLeo9 小时前
成为全栈·基础补充·Linux 服务器入门
linux·运维·服务器·ssh·部署·成为全栈
爱和冰阔落9 小时前
【Linux网络】TCP 服务器怎么写?从 listen、accept 到 read/write,手写完整 Echo Server
linux·运维·服务器·网络