每個強大的日誌系統都包含三個關鍵組件:收集器、儲存和視覺化器。 Winston 和 Pino 等流行的 Node.js 日誌模組僅充當日誌收集器。然而,Errsole 提供了完整的日誌記錄解決方案,其中包括:
日誌儲存:將日誌保存在檔案或應用程式的資料庫中。
內建儀表板:使用內建儀表板檢視、篩選和搜尋日誌。
警報:接收重大錯誤的即時通知。
要使用 Errsole,您需要安裝 Errsole 模組以及基於您選擇的資料庫的儲存模組。以下是不同儲存選項的安裝步驟:
npm install errsole errsole-sqlite
npm install errsole errsole-mongodb
npm install errsole errsole-mysql
npm install errsole errsole-postgres
在現實生活中的 Node.js 專案中,您將擁有多個檔案。要在專案的每個檔案中使用 Errsole Logger,請建立一個 logger.js 檔案並在其中初始化 Errsole:
const errsole = require('errsole'); const ErrsoleSQLite = require('errsole-sqlite'); errsole.initialize({ storage: new ErrsoleSQLite('/tmp/logs.sqlite') }); module.exports = errsole;
現在,您可以在專案中的每個檔案中匯入 logger.js 檔案並使用它來記錄:
const logger = require('./logger'); // Example usage logger.info('This is an informational message.'); logger.error('This is an error message.');
Errsole Logger 函數採用與 console.log 相同的參數。您可以提供一個或多個以逗號分隔的字串、物件或變數。此外,您可以使用 meta 函數將元資料附加到日誌訊息中。此元資料可以是任何上下文訊息,例如 HTTP 請求或資料庫查詢結果。
logger.meta({ reqBody: req.body, queryResults: results }).error(err); logger.meta({ email: req.body.email }).log('User logged in');
Errsole Logger 提供了五個日誌等級的功能:alert、error、warn、info 和 debug。
日誌/資訊:用於記錄訊息或資訊。
logger.log('Logging a message'); logger.log('Multiple', 'arguments', 'are supported'); logger.log('Logging with a variable:', var1); logger.log(new Error('An error occurred')); logger.log('Logging with an error object:', errorObject);
警報:記錄訊息並向配置的管道發送通知,例如電子郵件或 Slack。
logger.alert('Alert! Something critical happened');
錯誤:專門用來記錄錯誤。
logger.error(new Error('An error occurred'));
警告: 記錄警告訊息。
logger.warn('This is a warning message');
debug: 記錄偵錯訊息,通常用於開發過程中的故障排除。
logger.debug('Debugging information');
每當您的 Node.js 應用程式崩潰時,Errsole 都會向您的開發團隊發送即時通知。此通知包括錯誤訊息、應用程式名稱、環境名稱和伺服器名稱。
要將嚴重錯誤新增至此通知列表,請在程式碼中使用 logger.alert。但是,請避免過度使用它,以防止通知淹沒您的開發人員。將其用於支付失敗或資料庫查詢失敗等嚴重錯誤。將錯誤物件放入警報函數中,並在元函數中新增所有上下文資訊。這使開發人員可以輕鬆調試關鍵錯誤。
logger.meta({ reqBody: req.body, queryResults: results }).alert(err);
將完整的日誌記錄解決方案合併到 Node.js 應用程式中可確保強大的日誌管理和高效的偵錯。 Errsole 提供日誌儲存、內建儀表板和即時通知,使其成為完整的日誌記錄工具。
要開始使用 Errsole,請造訪 https://github.com/errsole/errsole.js。
以上是使用 Errsole 為 Node.js 應用程式建立自訂記錄器的詳細內容。更多資訊請關注PHP中文網其他相關文章!