连锁门店如何做好可观测性?
Flashcat是快猫星云开发的一体化可观测性产品,已服务各行各业众多企业。本文将总结分享Flashcat为多家大型连锁门店企业建设可观测性平台的经验。结合连锁门店行业的情况,从以下三个问题出发:
- 连锁门店的可观测性有什么特点?
- 连锁门店的 IT 部门面临什么挑战?
- 连锁门店的可观测性建设难在哪?
连锁门店的可观测性有什么特点
连锁门店的可观测性最大的特点是:除了服务端的IT基础设施和程序需要观测外,还有分布全国各地的大量门店IT基础设施和程序需要观测。如何既做好服务端的观测又做好门店端的观测,并将两者打通,是连锁门店观测方案的一大特点。
门店端
门店端的可观测性建设有相当的特殊性,首先大量门店的IT设备和程序数据需要采集,其次采集后如何做出直观的呈现,以便IT技术人员或值班人员(有可能是外包人员)方便快速的确认问题,这些都是门店端方案需要考虑的重点。
门店端的数据采集是门店行业的一大难点,后面描述。这里重点介绍Flashcat针对门店端观测做的方案和效果。
这里还是利用Flashcat的灭火图来做观测方案。
Flashcat将每个门店和门店中的设备、程序当做“观测对象”。这些观测对象按企业的观测习惯和使用方不同,可以按门店/区域来组织,比如华东市场、华南市场、华北市场。
也可以按设备和程序的类型来组织,如归零类(异常后整个门店IT不可用)、网络类、中间件类、系统类、程序类等等。
灭火图提供了灵活的组织这些视角的规则和能力。
最后每个观测对象的异常都可以在灭火图首页呈现出来,并可以下钻或直接透视定位到具体的异常对象及其异常指标,实现成千上万个门店的统一观测。
服务端
连锁门店的服务端和其他行业的IT架构基本类似,大致都包括以下几层:
- 功能接口:如登录接口、下单接口、支付接口等等,通常成百上千。
- 微服务:如库存管理系统的程序、用户管理系统的程序等等研发编写并运行的程序服务。
- 标准中间件:如MySQL、Redis、Kafka等等。
- 基础设施:如主机、内网质量、外网质量、DNS、CDN等等。
Flashcat的灭火图能够将所有的“IT对象”分层分组,并做好各类对象的健康度量化,通过将异常的“对象”冒泡上浮的方式,在首页即可纵览所有IT基础设施的“着火点”,引导用户下钻分析异常对象的指标、日志、链路、事件、仪表盘等,完成故障的分析和确认。
连锁门店的IT部门面临什么挑战?
一个典型的挑战是,IT部门在业务的故障处理中通常处于被动地位,往往会等到业务部门或门店经理投诉后才知道发生了业务层面的故障,影响程度也靠投诉量来判断。
IT部门如何早于投诉发现业务的故障,并定量的描述故障的影响范围和影响深度,让IT部门在故障处理中化被动为主动?
Flashcat的北极星即针对性的解决这个问题。
北极星可以从业务的数据库表单中计算生成业务指标,典型的门店业务指标如POS机订单量,或支付量等。也可以将从各个门店收集的订单数据汇总成总的业务指标。并对这些业务指标做智能异常检测,发现业务指标的趋势异常,及时发出告警。
通过建设连锁门店的北极星指标,Flashcat的客户实现了真正的化被动为主动,先于投诉发现故障问题。这类good case在Flashcat的门店客户场景中出现,对技术部门往往是一个巨大的鼓舞。
连锁门店的可观测性建设难在哪?
门店数据的采集和规范建设可能是建设过程中最基础也最难的一个点。
连锁门店企业,门店的数量往往成千上万,所有门店及门店设备的数据都需要采集。同时门店设备种类多、系统多,可能还存在设备和系统老旧的问题。
如何采集到这些数据,并建立起门店的数据规范,以让后面的观测能够做到准确无误,是落地过程中的一大难点。
Flashcat在和客户推进门店数据采集的过程中,利用采集器Categraf积累了大量的设备和程序的采集模板和方案。如门店的路由器、交换机、网络、点餐机、程序等等,这些采集方案都可以在其它门店企业中快速应用。
针对老旧的设备和程序,Flashcat则可以配合Categraf的拨测能力实现对设备和程序的探测,保障最基本的异常感知能力。
门店数据在采集的过程中,很重要的一点是同时建设好采集数据的规范,比如指标名称的规范、标签的规范等。
其中最重要的是为每个门店采集的指标打上门店的ID和门店名称的标签。甚至可以在采集数据的处理过程中,为指标添加门店对应的地理经纬度。
有了这些完善的数据规范,后面Flashcat就可以准确而快速的建立起灭火图、地图等等观测视角,实现对门店IT健康状态精准而直观的观测。
最后,如何让保障流程运行起来?
有了观测能力,保障连锁门店IT服务的稳定性还差最后一步,就是建立起相应的稳定性保障流程。让制度来驱动保障能力落地。
Flashduty 就是针对性的解决这个环节的问题。Flashduty可以收集观测系统、灭火图、北极星以及各个告警源的告警,对所有告警事件做聚合降噪、优先级划分、值班排班、告警升级等设置。让整个保障流程通过告警驱动运行起来,实现用机制来保障稳定性的效果。
总结
各家连锁门店企业可能因业务的特点和已有观测能力的不同,建设的侧重点有所不同。
和客户一起实施的过程中,Flashcat还实践了包括 门店IT健康度量化、SLO驱动技术团队和供应商改进、IT隐患治理 等工作,都取得了很不错的效果。
总结来看,连锁门店行业的可观测性建设有很明显的独特性,和Flashcat的灵活性及最佳实践结合后形成了一套行之有效的可观测性解决方案。各连锁门店行业的朋友可以参考,并欢迎做进一步的交流探讨。