Linux - 檢視日誌的指令 tail、multitail、less
阿新 • • 發佈:2018-11-08
-
tail -f catalina.log
: 實時看log,會自動把新增的log直接顯示出來-
在實時日誌上列印顏色,給每個狀態給上不同的顏色,INFO綠色、WARN黃色、ERROR紅色
tail -f catalina.out | perl -pe 's/(INFO)/\e[0;32m$1\e[0m/g,s/(WARN)/\e[0;33m$1\e[0m/g,s/(ERROR)/\e[1;31m$1\e[0m/g'
-
只看ERROR
tail -f catalina.out | grep "ERROR" --line-buffered | perl -pe 's/(ERROR)/\e[1;31m$1\e[0m/g'
-
-
multitail
: 可同時開啟多視窗看log,適合用在看部署在很多機器上的專案的log-
-cS [color_scheme]
: 可以選擇輸出的log的顏色,推薦使用goldengate,也可自定義(修改/etc/multitail.conf)multitail -cS goldengate -l 'ssh [ip] "tail -100f /example/logs/catalina.out"' -cS goldengate -l 'ssh [ip] "tail -100f /example/logs/catalina.out"'
-
-
less
: 通常用來翻找日誌-
輸入
F
,也可以實時滾動日誌,就像tail -f
的效果一樣 -
在
.bashrc
下加入這一段,可以讓less在找log時輸出顏色-
高亮整條log
alias less="_show_log" _show_log() { awk ' /ERROR/ {printf("\033[1;31m%s\033[0m\n", $0)} /WARN/ {printf("\033[1;33m%s\033[0m\n", $0)} !/(WARN|ERROR)/ {printf("%s\n", $0)} ' $1 | "less" -r }
-
只高亮INFO、WARN、ERROR這種狀態
alias less="_show_log" _show_log() { awk ' /ERROR/ {sub(/ERROR/, "\033[1;31mERROR\033[0m")} /WARN/ {sub(/WARN/, "\033[1;33mWARN\033[0m")} /INFO/ {sub(/INFO/, "\033[0;32mINFO\033[0m")} {print} ' $1 | "less" -r }
-
-