在Ubuntu中排查Node.js日志錯誤可以通過以下幾個步驟進行:
Ubuntu系統日志通常存儲在 /var/log
目錄下。您可以使用以下命令查看系統日志:
查看系統日志文件:
cat /var/log/syslog
查看內核日志文件:
cat /var/log/kern.log
journalctl
查看systemd日志journalctl
是Ubuntu中用于查看和管理systemd日志的工具。您可以使用以下命令來查看與Node.js相關的日志:
打印journald中記錄的所有引導項:
journalctl -b
指定日期范圍查看日志:
journalctl --since "2024-01-01 00:00:00" --until "2024-01-31 23:59:59"
按照優先級級別過濾日志:
journalctl -p 3
在Node.js應用程序中,推薦使用專門的日志庫,如 Winston 或 Bunyan,這些庫提供了靈活的日志記錄功能,包括日志級別控制、日志輸出方式、日志文件輪換等。
安裝 Winston:
npm install winston
配置和使用 Winston:
const winston = require('winston');
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.File({ filename: 'error.log', level: 'error' }),
new winston.transports.File({ filename: 'combined.log' }),
],
});
logger.info('這是一條信息日志');
logger.error('這是一條錯誤日志');
winston-daily-rotate-file
)來管理日志文件大小,自動刪除舊日志或歸檔。無論使用哪種方法,建議采用結構化日志格式,這樣日志更容易被解析和分析。例如,在使用Winston時,可以通過自定義格式來包含更多元數據和結構。
通過以上步驟和方法,您可以有效地排查和解決Ubuntu中Node.js應用程序的日志錯誤。