JavaScript 用 Azure Logger クライアント ライブラリ - バージョン 1.1.4

@azure/logger パッケージを使用して、JavaScript 用 Azure SDK のログ記録を有効にすることができます。

ログ記録は、次の方法で Azure SDK に対して有効にすることができます。

  • AZURE_LOG_LEVEL環境変数の設定
  • "@azure/logger" からインポートされた setLogLevel の呼び出し
  • 特定のロガーで enable() を呼び出す
  • DEBUG 環境変数の使用。

AZURE_LOG_LEVELが設定されている場合は、DEBUG よりも優先されることに注意してください。 AZURE_LOG_LEVELを指定したり setLogLevel を呼び出したりせずに DEBUG のみを使用します。

はじめ

取り付け

次のように 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 - 基本的な使用方法

const { EventHubClient } = require('@azure/event-hubs');

const logger = require('@azure/logger');
logger.setLogLevel('info');

// operations will now emit info, warning, and error logs
const client = new EventHubClient(/* params */);
client.getPartitionIds()
  .then(ids => { /* do work */ })
  .catch(e => { /* do work */ });
});

例 2 - リダイレクト ログ出力

const { AzureLogger, setLogLevel } = require("@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 フォルダーを調べて、パブリック クラスの高度な使用方法と動作を確認します。

トラブルシューティング

このライブラリの使用中に問題が発生した場合は、問題をしてください。

貢献

このライブラリに投稿する場合は、コードをビルドしてテストする方法の詳細については、投稿ガイド を参照してください。

インプレッション