在Ubuntu系統中查看Node.js日志詳情有多種方法,以下是一些常用的命令和步驟:
tail
命令查看實時日志tail
命令可以用來查看文件的末尾內容。我們可以使用 tail -f
命令來查看Node.js應用程序的實時日志。例如,要查看名為 app.log
的日志文件,可以運行以下命令:
tail -f app.log
這將持續顯示 app.log
文件的末尾內容,直到通過 Ctrl + C
組合鍵結束命令。
cat
命令查看日志文件內容cat
命令可以用來查看文件的內容。我們可以使用 cat
命令來打印Node.js應用程序的日志文件的全部內容。例如,要查看 app.log
文件的內容,可以運行以下命令:
cat app.log
這將顯示 app.log
文件的全部內容。
grep
命令篩選日志內容grep
命令可以用來在文件中搜索指定的文本。我們可以使用 grep
命令來篩選Node.js應用程序的日志內容。例如,要篩選包含關鍵字 error
的日志行,可以運行以下命令:
cat app.log | grep "error"
這將顯示 app.log
文件中包含關鍵字 error
的所有行。
如果你使用PM2來管理你的Node.js應用,可以使用以下命令來查看日志:
顯示所有應用的實時日志:
pm2 logs
顯示特定應用的日志:
pm2 logs <app_name>
以JSON格式顯示所有應用的日志:
pm2 logs --json
顯示特定應用的日志,并限制顯示的行數:
pm2 logs <app_name> --lines 1000
使用儀表盤顯示所有應用:
pm2 monit
讓輸出日志加上時間戳:
pm2 start app.js --time
在啟動應用時初始化日志相關信息:
pm2 start app.js --log /path/to/logfile
或者在配置文件中設置:
{
"apps": [{
"name": "Business News Watcher",
"script": "app.js",
"out_file": "/dev/null",
"error_file": "/dev/null",
"log_file": "/path/to/logfile",
"time": true
}]
}
在集群模式下,讓所有進程的日志都寫入同一個日志文件:
pm2 start app.js -i max --merge-logs
清除所有應用的日志:
pm2 flush
清除特定應用的日志:
pm2 flush <app_name>
journalctl
命令查看系統日志(適用于使用systemd的系統)如果你的Node.js應用是作為systemd服務運行的,可以使用 journalctl
命令來查看相關日志:
journalctl -u your-nodejs-service-name -t
其中 your-nodejs-service-name
是你的Node.js服務名稱。
通過這些方法,你可以方便地查看和管理Ubuntu系統上Node.js應用程序的日志。