日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

好难!打个日志还能打出一个bug,语塞...

發(fā)布時間:2024/8/26 57 豆豆
生活随笔 收集整理的這篇文章主要介紹了 好难!打个日志还能打出一个bug,语塞... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

某日中午,收到告警,有一筆訂單下單失敗了。趕緊去Cat看了下錯誤信息,如下:
Web應用調(diào)用訂單服務的RPC接口報錯了,一看錯誤很自主的認為這是一個序列化的問題。后面排查下來發(fā)現(xiàn)壓根就不是,這個錯誤報的有點。。。

想著是不是參數(shù)中有什么特別的東西,然后發(fā)現(xiàn)也沒有什么特別的。這個錯誤是某個商品下單才會出現(xiàn),不是所有的商品都會出現(xiàn)這個問題。

然后嘗試在本地復現(xiàn),有這么一行關鍵的代碼,貼了一部分,完整的作用是埋點打日志。

String.format("UnifiedOrderServiceImpl.makeOrder創(chuàng)建訂單, make order, request: MakeOrderRequest= "+ request)

說實話我是沒看懂這里用String.format的原因在哪里,不就是想拼接個字符串么?還搞個format,搞就搞嘛,還沒用占位符,騷操作。

真正Bug的原因是request對象中有個String類型的字段,字段里面的內(nèi)容有%\,format內(nèi)部就報錯了,大家可以用下面這段代碼復現(xiàn)錯誤:

public static void main(String[] args) {String.format("dsdsdsd"+"%\\sdsd"); }

錯誤信息:

Exception in thread "main" java.util.UnknownFormatConversionException: Conversion = '\'

原因是在format中會校驗參數(shù),然后觸發(fā)了異常。

好難!打個日志還能打出一個bug,語塞…


雖然是很小的改動,就記錄個日志而已,但也不要輕視,往往就是不夠仔細,然后才會出這種問題。

總結:

  • 認真對待每一行代碼
  • 做好code review

總結

以上是生活随笔為你收集整理的好难!打个日志还能打出一个bug,语塞...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。