溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java線上問題排查與參考答案

發(fā)布時(shí)間:2020-06-04 11:27:49 來源:億速云 閱讀:278 作者:Leah 欄目:編程語言

這篇文章給大家分享的是Java的線上問題排查與參考答案。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過來看看吧。

一、了解機(jī)器連接數(shù)情況

問題:1.2.3.4的sshd的監(jiān)聽端口是22,如何統(tǒng)計(jì)1.2.3.4的sshd服務(wù)各種連接狀態(tài)(TIME_WAIT/ CLOSE_WAIT/ ESTABLISHED)的連接數(shù)。 常見方法:

· netstat -n | grep 1.2.3.4:22 | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’

· netstat -lnpta | grep ssh | egrep “TIME_WAIT | CLOSE_WAIT | ESTABLISHED”

· n [僅限于阿里云]

說明:netstat是追查網(wǎng)絡(luò)連接問題常用工具,和grep/awk結(jié)合更是神器,當(dāng)然如果在阿里云上,還有更方便的方法。

二、從已經(jīng)備份好的日志中查詢數(shù)據(jù)

問題:從已備份的suyun.2019-06-26.log.bz2日志中,找出包含關(guān)鍵字1.2.3.4的日志有多少條。 常見方法:

· bzcat suyun.2019-06-26.log.bz2 | grep '1.2.3.4' | wc -l

· bzgrep '1.2.3.4' suyun.2019-06-26.log.bz2 | wc -l

· less suyun.2019-06-26.log.bz2 | grep '10.37.9.11' | wc -l

說明:線上日志文件一般以bz2 壓縮之后保留,如果解壓查詢,非常耗空間與時(shí)間,bzcat和bzgrep是研發(fā)同學(xué)必須掌握的工具。

三、備份服務(wù)的技巧

問題:打包備份/opt/web/suyun_web目錄,排除掉目錄中的logs和目錄,打包好的文件存放在/opt/backup目錄下。 常見方法:tar -zcvf /opt/backup/shenjian.tar.gz \ -exclude /opt/web/suyun_web/logs \ /opt/web/suyun_web 說明:這個(gè)命令線上應(yīng)用較為頻繁,在項(xiàng)目需要打包遷移時(shí),常常需要排除掉日志目錄,exclude是需要掌握的參數(shù)。

四、查詢線程數(shù)

問題:查詢服務(wù)器運(yùn)行服務(wù)的總線程數(shù),當(dāng)機(jī)器線程數(shù)超報(bào)警閥值時(shí),能快速查出相關(guān)進(jìn)程及線程信息。 參考答案:

· ps -eLf | wc -l

· pstree -p | wc -l

五、磁盤報(bào)警,清空最大文件

問題:找出服務(wù)器上,某個(gè)正在運(yùn)行的tomcat產(chǎn)生的大量異常日志,找出該文件,并釋放空間。不妨設(shè)該文件包含log關(guān)鍵字,并且大于1G。 常見方法:第一步,找到該文件

· find / -type f -name "log" | xargs ls -lSh | more

· du -a / | sort -rn | grep log | more

· find / -name 'log' -size +1000M -exec du -h {} \;

第二步,將文件清空假設(shè)找到的文件為a.log正確的情況方式應(yīng)該為:echo "">a.log文件空間會(huì)立刻釋放。
很多同學(xué)會(huì)使用:rm -rf a.log這樣文件雖然刪除,但是因tomcat服務(wù)仍在運(yùn)行,空間不會(huì)立刻釋放,需要重啟tomcat才能將空間釋放。

六、顯示文件,過濾注釋

問題:顯示server.conf 文件,屏蔽掉#號(hào)開頭的注釋行 常見方法:

· sed -n '/^[#]/!p' server.conf

· sed -e '/^#/d' server.conf

· grep -v "^#" server.conf

·

七、磁盤IO異常排查

問題:磁盤IO異常如何排查,類似寫入慢或當(dāng)前使用率較高,請查出導(dǎo)致磁盤IO異常高的進(jìn)程ID。

常見方法:

第一步:iotop -o查看當(dāng)前正在寫磁盤操作的所有進(jìn)程ID信息。

第二步:如果此時(shí)各項(xiàng)寫入指標(biāo)都很低,基本沒有大的寫入操作,則需要排查磁盤自身。可以查看系統(tǒng)dmesg或cat /var/log/message看看是否有相關(guān)的磁盤異常報(bào)錯(cuò),同時(shí)可以在寫入慢的磁盤上touch一個(gè)空文件看看,是否磁盤故障導(dǎo)致無法寫入。

以上就是Java的線上問題排查與參考答案的詳細(xì)內(nèi)容了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI