作為一名背鍋俠,當我們入職一個新公司,或者調到一個新項目的時候,一些服務的啟動方式沒有直接顯示日志輸出路徑,當遇到問題,需要我們通過日志進行問題排查的時候,會有那么尷尬的時候,不知道日志存放在哪里?所以簡單分享一下。
1. 第一步:查看進程的PID
Java進程的PID可以使用:jps 命令來查看(如果是一些其他的應用程序服務,直接使用:ps 過濾出對於的PID即可)
# jps 45024 egc-thirdpartyplatform-app-service-2.4.0.jar
以PID為 45024的Java進程為例,查看次進程的日志輸出路徑。
2. 第二步:通過PID 查看進程打開的文件
# ls /proc/45024/fd # fd目錄介紹 此目錄包含進程打開的所有文件,文件名為文件描述符,目錄中每個軟連接都會指向進程打開的實際文件
然后我們就可以過濾出此進程日志輸出的存放路徑(注意:建議日志文件都以 ".log"結尾)
$ ll /proc/45024/fd | grep "log" l-wx------ 1 root root 64 Oct 25 15:03 184 -> /data/logs/error/egc-thirdpartyplatform-app-9999-2020-10-26-0.log l-wx------ 1 root root 64 Oct 25 15:03 193 -> /data/logs/egc-thirdpartyplatform-app-9999-2020-10-26-0.log