首頁 科技週邊 IT業界 伐木簡便:node.js中的winston的初學者指南

伐木簡便:node.js中的winston的初學者指南

Feb 08, 2025 pm 12:46 PM

Logging Made Easy: A Beginner's Guide to Winston in Node.js

>本教程演示瞭如何利用強大的Node.js記錄庫Winston,以增強應用程序的監視和調試功能,同時託管在Uvtr Compute Server上。 我們將介紹必要的日誌記錄最佳實踐,並配置Winston以處理各種日誌級別。 >

本文由Uvtr贊助,Vultr是一個領先的全球雲計算平台,為全球超過150萬客戶提供可擴展解決方案。探索Vultr的Cloud Compute,Cloud GPU,Bare Metal和Cloud Storage選項。 記錄的重要性

有效記錄對於應用程序開發至關重要。它的好處包括:

>調試:
    查明錯誤和有效故障排除的異常。
  1. >監視:
  2. 獲得對應用程序性能,資源利用率和用戶交互的洞察力,以進行主動優化。
  3. 審計:
  4. 保持安全分析,更改跟踪和監管合規性的系統事件的全面記錄。
  5. >最佳記錄實踐
成功的記錄需要仔細計劃。關鍵原則包括:

>

適當的日誌級別:
    >使用不同的日誌級別(錯誤,警告,信息,調試,冗長,愚蠢)來按嚴重性分類。
  1. 一致的格式:維護標準化的日誌消息結構,包括時間戳,級別和上下文信息。
  2. 結構化數據:採用JSON等結構化格式,以便於使用監視工具進行解析和集成。
  3. 有效的記錄:避免過多的日誌記錄以防止性能開銷和記錄雜物。
  4. 數據安全性:處理敏感數據(密碼,代幣等)以保護用戶隱私。
  5. winston:設置和日誌級別 溫斯頓支持以下日誌級別:錯誤,警告,信息,調試,冗長,愚蠢。 每個級別代表不同的嚴重程度。
>在您的node.js項目上設置winston

請按照以下步驟將Winston集成到您的node.js應用程序中,該應用程序部署在vultr Compute實例上:

>在vultr上部署:

配置一個vultr Compute實例,然後安裝Node.js.

  1. ssh訪問:通過SSH安全連接到服務器。

  2. 系統更新:>更新服務器的軟件包。

    >
  3. 項目設置:創建一個新的項目目錄,導航到它,然後初始化

  4. >:
  5. package.json>

    安裝依賴項:
    mkdir my-winston-project
    cd my-winston-project
    npm init -y
    登入後複製
    登入後複製
    安裝winston和express:>
    mkdir my-winston-project
    cd my-winston-project
    npm init -y
    登入後複製
    登入後複製
  6. 創建app.js創建和編輯以下代碼:app.js

    npm install winston express
    登入後複製
  7. 創建logger.js創建和編輯> logger.js

    const express = require("express");
    const logger = require("./logger"); // Import the logger
    const app = express();
    
    app.get("/", (req, res) => {
      logger.debug("Hello, world");
      logger.info("This is the home route.");
      res.send("Logging Hello World..");
    });
    
    app.get("/event", (req, res) => {
      try {
        throw new Error("Not User!");
      } catch (error) {
        logger.error("Events Error: Unauthenticated", { error }); // Log error with details
      }
    });
    
    app.listen(3000, () => {
      logger.info("Server Listening On Port 3000");
    });
    登入後複製
  8. >防火牆配置:

    允許在端口3000上傳入連接(使用)。 ufw

  9. >運行應用程序:

    使用 node app.js

    擴展您的vultr部署
探索這些高級的vultr功能:

> 實施CI/CD管道
  • >使用nginx
  • 管理多個node.js應用程序
  • >部署MERN應用程序
  • 結論
  • 有效記錄對於應用健康和可維護性至關重要。溫斯頓簡化了該過程,為管理日誌消息提供了靈活而強大的解決方案。 通過將Winston與Vultr的可伸縮性相結合,您可以構建可靠且易於監視的應用程序。

以上是伐木簡便:node.js中的winston的初學者指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1677
14
CakePHP 教程
1431
52
Laravel 教程
1333
25
PHP教程
1278
29
C# 教程
1257
24
使用AWS ECS和LAMBDA的無服務器圖像處理管道 使用AWS ECS和LAMBDA的無服務器圖像處理管道 Apr 18, 2025 am 08:28 AM

該教程通過使用AWS服務來指導您通過構建無服務器圖像處理管道。 我們將創建一個部署在ECS Fargate群集上的next.js前端,與API網關,Lambda函數,S3桶和DynamoDB進行交互。 Th

21個開發人員新聞通訊將在2025年訂閱 21個開發人員新聞通訊將在2025年訂閱 Apr 24, 2025 am 08:28 AM

與這些頂級開發人員新聞通訊有關最新技術趨勢的了解! 這個精選的清單為每個人提供了一些東西,從AI愛好者到經驗豐富的後端和前端開發人員。 選擇您的收藏夾並節省時間搜索REL

CNCF觸發了ARM64和X86的平台平等突破 CNCF觸發了ARM64和X86的平台平等突破 May 11, 2025 am 08:27 AM

Arm64 架構開源軟件的 CI/CD 難題與解決方案 在 Arm64 架構上部署開源軟件需要一個強大的 CI/CD 環境。然而,Arm64 和傳統 x86 處理器架構的支持水平之間存在差異,Arm64 通常處於劣勢。面向多種架構的基礎設施組件開發人員對工作環境有一定的期望: 一致性:跨平台使用的工具和方法保持一致,避免因採用不太流行的平台而需要改變開發流程。 性能:平台和支持機制具有良好的性能,確保在支持多個平台時部署方案不會因速度不足而受影響。 測試覆蓋率:對所有平台同時進行效率、合規性和

定制電信軟件的好處 定制電信軟件的好處 May 11, 2025 am 08:28 AM

定制电信软件开发无疑是一项相当大的投资。然而,从长远来看,您可能会意识到,这样的项目可能更具成本效益,因为它可以像市场上任何现成的解决方案一样提高您的生产力。了解构建定制电信系统的最重要优势。 获取您所需的确切功能 您可以购买的现成电信软件有两个潜在问题。有些缺乏可能显著改善您工作效率的有用功能。有时您可以通过一些外部集成来增强它们,但这并不总是足以使它们变得出色。 其他软件功能过多,使用起来过于复杂。您可能不会使用其中的一些(永远不会!)。大量的功能通常还会增加价格。 基于您的需求

為什麼您的自動化需要AI決策(以及Wordware如何提供) 為什麼您的自動化需要AI決策(以及Wordware如何提供) May 15, 2025 am 10:47 AM

我們都體驗過傳統自動化平台如Zapier和IFTTT的神奇之處。它們擅長連接應用程序並自動化簡單的“如果這樣,則那樣”序列:新表單提交創建電子表格行,傳入郵件觸發Slack警報。簡單、有效,且對於基本任務來說是巨大的時間節省者。但是,你的實際工作流程有多麼簡單?一旦你的工作流程需要理解細微的上下文、優雅地處理錯誤或處理非結構化數據,這些工具往往會遇到障礙。它們的簡單性使其易於使用,但也成為一種限制。當簡單規則不夠用時:考慮一下客戶支持。票務系統湧入非結構化數據——聊天片段、屏幕截圖、複雜的用戶描

See all articles