該 @azure/logger 包可用於在適用於 JavaScript 的 Azure SDK 中啟用日誌記錄。
您可以透過下列方式為 Azure SDK 啟用紀錄:
- 設定AZURE_LOG_LEVEL環境變數
- 呼叫從 「@azure/logger」 匯入的 setLogLevel
- 在特定記錄器上呼叫 enable()
-
DEBUG使用環境變數。
請注意,如果設定,AZURE_LOG_LEVEL優先於 DEBUG。 只使用 DEBUG 而不指定AZURE_LOG_LEVEL或呼叫 setLogLevel。
開始
安裝
使用 npm 安裝此連結庫,如下所示
npm install @azure/logger
重要概念
該 @azure/logger 套件支援以下紀錄級別,這些等級按從最詳細到最不詳細的順序指定:
- 詳細
- 資訊
- 警告
- 錯誤
以程式設計方式或通過 AZURE_LOG_LEVEL 環境變數設置日誌級別時,將發出使用等於或小於所選日誌級別寫入的任何日誌。
例如,將日誌級別 warning 設置為 將導致發出所有具有日誌級別 warning 或的 error 日誌。
注意:在記錄請求和回應時,我們會清理這些物件,以確保不會記錄包含密鑰的標頭等 Authorization 內容。
永遠不會記錄要求和響應主體。 除非出現在下列清單中或用戶端 SDK 明確允許,否則標頭預設會進行修訂:
- “x-ms-client-request-id”,
- “x-ms-return-client-request-id”,
- “x-ms-useragent”,
- “x-ms-correlation-request-id”,
- “x-ms-request-id”,
- “client-request-id”,
- “ms-cv”,
- “return-client-request-id”,
- “traceparent”,
- “Access-Control-Allow-Credentials”,
- “Access-Control-Allow-Headers”,
- “Access-Control-Allow-Methods”,
- “Access-Control-Allow-Origin”,
- “Access-Control-Expose-Headers”,
- “Access-Control-Max-Age”,
- “Access-Control-Request-Headers”,
- “Access-Control-Request-Method”,
- “Origin”,
- “Accept”,
- “Accept-Encoding”,
- “Cache-Control”,
- “Connection”,
- “Content-Length”,
- “Content-Type”,
- “Date”,
- “ETag”,
- “Expires”,
- “If-Match”,
- “If-Modified-Since”,
- “If-None-Match”,
- “If-Unmodified-Since”,
- “Last-Modified”,
- “Pragma”,
- “Request-Id”,
- “Retry-After”,
- “Server”,
- “Transfer-Encoding”,
- “User-Agent”,
- “WWW-Authenticate”,
例子
範例 1 - 基本用法
import { setLogLevel } from "@azure/logger";
setLogLevel("info");
範例 2 - 重新導向記錄輸出
import { setLogLevel, AzureLogger } from "@azure/logger";
setLogLevel("verbose");
// override logging to output to console.log (default location is stderr)
AzureLogger.log = (...args) => {
console.log(...args);
};
使用 AzureLogger,可以通過重寫 AzureLogger.log 該方法來重定向 Azure SDK 的日誌記錄輸出。 如果您想要將記錄重新導向至 stderr 以外的位置,這可能很有用。
後續步驟
您可以在本機建置及執行測試,方法是執行 rushx test。 探索 test 資料夾,以查看公用類別的進階使用方式和行為。
故障排除
貢獻
如果您想要參與此連結庫,請閱讀 參與指南,以深入瞭解如何建置和測試程序代碼。