後端篇 08 排查後台介面崩潰問題

2021-09-16 18:29:48 字數 1273 閱讀 7976

聯合除錯過程中,裝置呼叫某雲端api列印報錯:

typeerror: cannot read property 『length』 of undefined

登入aws cloudwatch,找到裝置的通訊過程中的列印

根據列印定位到指定的api,具體排查問題,模擬使用者場景,找出復現規律。

單元測試指定的api過程中,發現復現規律,馬上用node.js寫了乙個demo測試,找出根因。

var jsoninfo = ,

],};var json = json.stringify(jsoninfo);

console.log(json);

console.log(typeof json);

var backtojs = json.parse(json);

console.log(backtojs);

console.log(backtojs.room.length);

// 當上傳的資料,room欄位不存在的時候,去訪問.room.length就會出錯

typeerror: cannot read property 'length' of undefined

at object.(/node.js-tutorial/p19.js:18:38)

at module._compile (module.js:652:30)

at object.module._extensions..js (module.js:663:10)

at module.load (module.js:565:32)

at trymoduleload (module.js:505:12)

at function.module._load (module.js:497:3)

at function.module.runmain (module.js:693:10)

at startup (bootstrap_node.js:188:16)

找出復現規律並發現了產生問題的根因,這時候可以重點排查裝置上傳的字段。發現有的時候裝置上傳的字段為亂碼,導致該問題出現。一方面後台並沒有檢查欄位的合法性還有為什麼裝置上傳的字段有的時候為亂碼。這個是需要內部解決的。

Nginx 服務報錯502排查

伺服器併發量上來後部分介面報錯502,但是經檢視併發量遠沒達到伺服器極限。檢視nginx中配置檔案 usr local nginx conf vhost 中對應站點的日誌位置 data log 發現報錯誤connect to unix tmp php cgi.sock failed netstat ...

CPU100 排查總結

系統 centos7 openjdk 1.8 1 簡單介紹 1 若cpu100 可能所有程序都不能正常幹活 假死 2 cpu100 出現情況 沒有多餘cpu切換 所有cpu均被占用,且不能被釋放 3 cpu100 出現條件 死迴圈 迴圈裡無阻塞 只有計算型任務 注 system.out.printl...

JVM(四)排查工具使用

jps是什麼?jstat命令使用 jstat gc 2764 250 20 2764表示程序id 250表示250毫秒列印一次 20表示一共列印20次 s0c 第乙個倖存區的大小 s1c 第二個倖存區的大小 s0u 第乙個倖存區的使用大小 s1u 第二個倖存區的使用大小 ec 伊甸園區的大小 eu ...