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

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

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

什么是端到端观测

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

观测的三个层次

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

  • 业务层次
    业务层次是差别最大的,不同的业务观测指标完全不同。但是,确定哪些指标需要成为业务指标也是有一定的基本原则的:
    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 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
在角落发呆6 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
裴东青8 小时前
10-实战:RuoYi-Cloud的自动化发布
运维·ci/cd·自动化
哎呦,帅小伙哦8 小时前
Linux 时间:从原子钟到 clock_gettime 的每一面
linux·运维·服务器
sxgzzn8 小时前
新能源场站数智化转型:基于数字孪生与AI的智慧运维管理平台解析
大数据·运维·人工智能
张小姐的猫8 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
CodeMartain9 小时前
Dify Windows 原生部署(无 Docker、纯本地)
运维·docker·容器
xxx1x1x9 小时前
极客向:DLL/运行库故障的底层逻辑与自动化修复方案
运维·自动化·dll文件·dll·dll修复·dll缺失·dll一键修复
YuanDaima20489 小时前
Linux 进阶运维与 AI 环境实战:进程管理、网络排错与 GPU 监控
linux·运维·服务器·网络·人工智能
lolo大魔王10 小时前
Linux 数据文件处理实战:排序、搜索、压缩、归档一站式详解
linux·运维·服务器