在測試時(shí),是否經(jīng)常遇到以下情況?
開發(fā):
"這個(gè)bug怎么出現(xiàn)的?重現(xiàn)一下"
"我試了沒發(fā)現(xiàn)這個(gè)bug,你在看看,出現(xiàn)了告訴我"
......
特別是對(duì)于一些不好說明,不容易復(fù)現(xiàn)的bug。
學(xué)會(huì)定位bug后,就可以在提交bug時(shí)附上錯(cuò)誤日志截圖,雖然開發(fā)可能不能看一下日志就能解決問題,但可以讓開發(fā)確認(rèn)的確有bug,有一個(gè)大概的方向去解決,而不是把bug直接打回來。
本文主要介紹如何查詢后臺(tái)服務(wù)器日志的方式去定位bug:
- 連接上服務(wù)器,
- cd進(jìn)入日志目錄
- ls查看目錄下所有文件
- tail -f 查看實(shí)時(shí)日志
場景舉例:
記錄當(dāng)天日志的文件名為test-XXXXX.log。
查看實(shí)時(shí)日志
tail -f test-XXXXX.log
查看實(shí)時(shí)10行日志
tail -10f test-XXXXX.log
過濾關(guān)鍵字,比如包含error日志
cat test-XXXXX.log | grep 'error'
cat -n test-XXXXX.log | grep 'error' # 輸出行號(hào)
cat test-XXXXX.log | grep -A 'error' # 顯示包含error及后5行
cat test-XXXXX.log | grep -B 'error' # 顯示包含error及前5行
cat test-XXXXX.log | grep -C 'error' # 顯示包含error及上下5行
按日期截取日志
日志中存在該時(shí)間點(diǎn)時(shí)
sed -n '/2021-11-06 11:00:00/,/2021-11-06 12:00:00/p' test-XXXXX.log
翻頁查看日志
cat -n test-XXXXX.log |grep 'error' |more
將日志存到debug.txt文件中
cat -n test-XXXXX.log |grep 'error' > debug.txt
查詢滿足error或者debug的日志
cat -n test-XXXXX.log |grep -E 'error'|'debug'
查詢到與錯(cuò)誤相關(guān)的日志后,就可以截圖一起提交給開發(fā)啦~