溫馨提示×

Ubuntu Node.js日志如何監控

小樊
42
2025-05-21 10:24:27
欄目: 編程語言

在Ubuntu系統中監控Node.js應用程序的日志有多種方法,以下是一些常用的工具和命令:

使用 console.log()console.error()

在您的Node.js代碼中,使用 console.log() 輸出常規日志信息,使用 console.error() 輸出錯誤信息。這些日志將直接發送到控制臺。

使用 tail -f 命令實時查看日志

如果您的Node.js應用程序將日志輸出到文件(例如 /var/log/myapp.log),您可以使用 tail -f 命令實時查看日志。在終端中輸入以下命令:

tail -f /var/log/myapp.log

這將顯示日志文件的最后幾行,并在文件更新時實時顯示新內容。

使用 multitail 工具

multitail 是一個強大的日志查看工具,可以同時監控多個日志文件,并提供實時更新、顏色高亮等功能。首先,您需要安裝 multitail

sudo apt-get install multitail

然后,使用以下命令監控Node.js應用程序的日志文件:

multitail /var/log/myapp.log

使用 PM2 進行日志監控

PM2 是一個進程管理器,可以提供進程監控、日志記錄和自動重啟等功能。首先,安裝 PM2:

sudo npm install pm2 -g

然后,使用以下命令來查看Node.js應用程序的實時日志:

pm2 logs

使用 Winston 進行日志記錄

Winston 是一個流行的Node.js日志庫,支持多種傳輸方式(如文件、控制臺、HTTP等)。安裝 Winston:

npm install winston

配置 Winston 以將日志輸出到控制臺和文件:

const winston = require('winston');
const logger = winston.createLogger({
  level: 'info',
  format: winston.format.json(),
  transports: [
    new winston.transports.Console(),
    new winston.transports.File({ filename: 'error.log', level: 'error' }),
    new winston.transports.File({ filename: 'combined.log' }),
  ],
});

logger.info('Server started on port 3000');
logger.error('Database connection failed');

使用 ELK Stack(Elasticsearch, Logstash, Kibana)進行集中式日志管理

ELK Stack 是一個強大的日志管理和分析平臺。安裝 Elasticsearch 和 Kibana,并配置 Winston 發送日志到 Elasticsearch。更多詳細步驟可以參考相關文檔。

通過上述方法,您可以有效地監控 Ubuntu 上的 Node.js 應用程序日志,確保應用程序的穩定運行和問題的快速排查。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女