logo
logo

航旅纵横崩了19小时——业务全栈全链路可观测性缺失的代价

小维 2026-04-22

2026 年 4 月 21 日,拥有逾亿用户的”民航版 12306”航旅纵横发生系统性故障,中午 12:30 崩溃,次日 7:31 才宣告恢复,整整 19 个小时里,无数旅客在机场陷入”行程页空白、电子登机牌刷不出”的窘境。这不是一次孤立的技术事故,而是一面镜子——折射出当前大量 IT 业务系统在可观测性建设上的深层缺口。

0x0: 事件还原:那 19 小时里,到底发生了什么

4 月 21 日中午 12:30 左右,大量航旅纵横用户打开 App,迎接他们的只有一行冰冷提示:”服务暂时不可用,请稍后再试”。行程查询、电子登机牌、购票退票、在线值机、航班动态等核心功能全线受影响。

机场现场,是另一番混乱:

  • 一位旅客正要过安检,打开 App 后行程信息”一片空白”,急出一身汗,幸好安检人员临时改用身份证核验才得以通关;
  • 旅客因查不到座位号,只能登机时逐个询问地服人员,现场一度陷入混乱;
  • 高频出差的职场人,近期密集行程全部同步在 App 里,既看不到起降时间,也查不到登机口变更,只能反复拨打航司电话逐一核对;
  • 客服答复只有一句:”恢复时间暂无法确定。”

话题词”航旅纵横崩了”迅速登上微博热搜。航旅纵横的官博虽在第一时间发布了情况说明,称”技术团队正在全力抢修”,但这场抢修一直持续到次日(4 月 22 日)7:31,历时整整 19 个小时,才宣告”各项功能恢复正常”,并承诺逐一跟进故障期间产生的订单异常问题。

这次故障的公共影响不容低估。 航旅纵横激活用户规模已突破 1 亿,月活跃用户约 3188 万,覆盖国内约 73%的民航旅客。与一般出行类应用不同,其在航班动态、电子登机牌、值机数据等方面具有较强数据权威性,已成为大量旅客获取民航出行信息的重要入口。

工程研判认为,在较保守情景下,仅考虑故障期间当日出行且高度依赖该平台的旅客,受影响用户可能达到数十万至百万人量级;如进一步纳入购票、退票、五一节前行程规划等场景,广义受影响用户可能进一步扩大至数百万人量级

0x1: 核心追问:为什么是 19 小时,而不是 5 分钟

故障历时如此之长,外界普遍关注的是”崩了”本身,值得追问的是:从故障发生到完全恢复,为什么需要这么久?

这个问题,才是真正值得 IT 行业深思的命题。

一次系统故障的处置,本质上分为三个阶段:

阶段 核心问题 传统模式的困境
发现 故障是什么时候被系统感知到的? 依赖用户投诉或告警阈值,通常滞后 5~30 分钟
定位 故障根因在哪里? 微服务架构下调用链复杂,各团队互相推诿,靠经验逐系统排查,耗时 2 小时以上
处置 怎么修?修完如何验证? 根因不明确,处置盲目,改了一处不知道是否修复了全部问题

航旅纵横这次崩溃,其技术根因外界尚未得到官方披露。但从”12:30 发现异常 → 次日 7:31 恢复”这个时间跨度来判断,定位阶段的耗时极有可能占据了整个处置周期的绝大部分

这正是当前绝大多数业务系统面临的核心困境:看得到现象,看不到原因;知道崩了,不知道为什么崩

0x2: 如果部署了业务全栈全链路可观测性,进程会如何演变

以下用一个更具操作性的视角重新审视这次事件——如果航旅纵横提前部署了业务全栈全链路可观测性平台,整个故障处置的进程会如何演进?

第一幕:故障发生之前——巡检智能体持续巡逻,发现隐患

现代业务系统的崩溃,极少是”无征兆的突发”,更多是长期压力积累后的一次集中爆发。在真正崩溃前,系统往往已经出现了细微的征兆信号:某个服务的响应时延开始抬升、数据库连接数持续攀升、某类错误日志的频率悄然增加……

业务全栈全链路可观测平台的巡检 Agent 正是为此而设计的——7×24 小时以业务场景为单元持续巡逻,当发现 CPU 趋势增长、活跃连接数攀升、偶发超时请求、偶发重传丢包等潜在隐患时,第一时间发出预警通知,让运维团队在故障发生前就有机会主动介入处置。

这次事件,或许根本不会发生。

第二幕:故障触发瞬间——业务场景墙实时感知,秒级精准告警

假设故障仍然发生——12:30,系统开始出现异常。

传统模式下,运维团队往往要等到用户大量投诉涌入客服系统,或者某个指标触达预设阈值才能感知到故障,这个延迟少则数分钟,多则十几分钟。

而在业务全栈全链路可观测体系中,业务场景墙(Business Scene Wall)直接以业务视角监控核心服务的健康状态——以”查询行程”、”购票”、”值机”等业务场景为单元,实时量化每类核心请求的请求量、成功率、响应时延

一旦”查询行程”的成功率从正常的 99.9%骤降至 20%,系统会在秒级内触发精准的业务告警——不是泛泛的”服务器 CPU 告警”,而是直接指向”查询行程”场景的健康恶化,运维人员无需在几百条基础设施告警中大海捞针。

12:30 故障触发,12:31 告警上屏。发现延迟:1 分钟。

第三幕:告警触发后——沿业务全链路按图索骥,1 分钟锁定故障点位

告警触发后,传统运维的第一个动作往往是:召集各系统负责人开会,逐个系统自查,相互排查责任。

而在业务全栈全链路可观测体系中,告警触发的同时,全链路追踪数据已经就位。运维人员打开”查询行程”业务场景的全链路拓扑图,从 API 网关出发,沿调用链逐跳查看每一个节点的健康状态——哪个节点的请求成功率骤降?哪一跳的响应时延异常飙升?

无需专家经验,无需团队间相互推诿,沿着拓扑地图按图索骥, 30 秒到 1 分钟内即可锁定故障节点,将故障范围从”整个系统不可用”收敛到”具体是哪个服务的哪种调用出了问题”。

12:32,故障节点锁定。定位耗时: 1 分钟。

第四幕:围绕故障点位,全栈数据确定根因, 3 分钟输出诊断报告

锁定节点后,传统模式依然面临一道难关:节点出问题了,但为什么出问题?

业务全栈全链路可观测体系在此刻提供的是纵向穿透能力——围绕已锁定的故障节点,从应用层→系统层→网络层→代码层逐层下钻:

  • 应用层:这个服务的错误日志在报什么?调用了哪些异常接口?
  • 系统层:系统的 CPU、内存、文件句柄有无异常?是否出现了 OOM 或文件描述符耗尽?
  • 网络层:是否存在连接建立失败、重传风暴、特定端口不可达的情况?
  • 代码层: On-CPU/Off-CPU 性能剖析,哪个函数调用在消耗资源或长时间阻塞?

配合AI 诊断智能体并发执行多路分析,3 分钟内即可自动输出根因报告与处置建议,为技术团队提供直接可操作的修复依据,而非凭经验猜测。

12:35,根因报告输出。研判耗时: 3 分钟。

0x3: 两种模式的对比,就是两种结果

处置阶段 传统监控模式(此次事件) 业务全栈全链路可观测体系
发现故障 用户大量投诉后感知,延迟 5~30 分钟 业务场景墙秒级感知,≤1 分钟
定位故障 各团队逐系统排查,依赖经验, 2 小时以上 全链路拓扑按图索骥,≤1 分钟
确定根因 人工分析日志、指标,耗时数小时 AI 诊断智能体并发分析,≤3 分钟
开始处置 故障发生后数小时才真正动手 故障发生后5 分钟内开始精准处置
社会影响 19 小时持续宕机,登上热搜 大概率在用户大规模感知前完成恢复

0x4: 结语: IT 系统的”数字卫士”,不是事后救火队

航旅纵横这次事件的背后,暴露的压力不只是技术层面的——它表明,当一个用户规模超亿的民生级平台发生系统性故障,没有精准的可观测能力,就没有快速响应的可能,最终付出代价的,是每一个拿着行李在机场不知所措的普通旅客。

业务全栈全链路可观测性体系,应当扮演的角色是 IT 系统的”数字卫士“——

  • 平时: 7×24 小时不间断持续巡逻,像安保人员一样扫描系统的每一个角落,提前发现隐患风险;
  • 预警时:一旦发现异常征兆,立即精准告警,而不是等到”楼已着火”才拉响警报;
  • 故障时:分钟级锁定根因、5 分钟内启动精准处置,将影响面扼杀在蔓延之前。

这不是事后救场的消防队,而是防患于未然的安全卫士。”1 分钟告警、3 分钟定位、5 分钟恢复“,是这套体系在真实故障处置中能够兑现的能力基线。

数字服务深度融入社会民生后,稳定性风险极易从产品体验问题演变为公共服务韧性事件。航旅纵横的这 19 小时,正是民生级数字服务稳定性治理的一个典型样本。

航旅纵横的 19 个小时,本不必发生。