Linux操作系統查看一個服務進程輸出的日志存放路徑(Java服務為例)


作為一名背鍋俠,當我們入職一個新公司,或者調到一個新項目的時候,一些服務的啟動方式沒有直接顯示日志輸出路徑,當遇到問題,需要我們通過日志進行問題排查的時候,會有那么尷尬的時候,不知道日志存放在哪里?所以簡單分享一下。

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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM