前公司一次線上問題解決的旅程

Jacky發表於2020-07-30

前某公司一次線上問題解決的旅程

背景
在前某公司的2B業務某服務做測試工作,基本業務為上游收到訊息後,發給本系統,本系統處理結束後訊息發給下游

問題的出現

  1. 本系統處理新訊息時報Exception,未能入庫和計算,push了下游不能預料的訊息給下游
  2. 下游採取了預設路徑處理該訊息

當時處理

  1. 發生問題後,迅速修改程式碼和上線,半小時左右問題消失
  2. 需要重新處理這半個小時的業務

後續處理

  1. ELK log系統通過elastic search工具抽取所有業務資料,並去重 - 測試做
  2. 同步ELK log系統抽取最早的一份異常資料,分析log,並開發程式將log重新整理為rabbitMQ的標準報文格式 - 開發做
  3. 1的檔案經2的程式處理後獲得裸報文資料檔案 - 開發做
  4. 通過postman批量傳送3獲得的訊息,觸發重新入庫,計算和釋出訊息 - 測試做

一些想法

  1. ELK的log過濾和分析還是很好用的
  2. message是分散式系統的基本功
  3. 談責任,開發測試反目成仇;談補救,上陣親兄弟各司其職

現在滾蛋了,還是很感恩和幾個好兄弟一起做專案的時光啊

相關文章