Поделиться через


Клиентская библиотека средства ведения журнала Azure для JavaScript версии 1.1.3

Пакет @azure/logger можно использовать для включения ведения журнала в пакетах SDK Azure для JavaScript.

Ведение журнала можно включить для пакета SDK Azure следующим образом:

  • Настройка переменной среды AZURE_LOG_LEVEL
  • Вызов setLogLevel, импортированный из "@azure/loger"
  • Включение вызова () для определенных средств ведения журнала
  • Использование переменной среды DEBUG.

Обратите внимание, что AZURE_LOG_LEVEL, если задано, имеет приоритет над 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",
  • "Источник",
  • "Принять",
  • "Accept-Encoding",
  • "Cache-Control",
  • "Подключение",
  • "Content-Length",
  • "Content-Type",
  • "Дата",
  • ETag,
  • "Истекает срок действия",
  • "If-Match",
  • "If-Modified-Since",
  • "If-None-Match",
  • "If-Unmodified-Since",
  • "Последнее изменение",
  • "Pragma",
  • "Request-Id",
  • "Повторная попытка",
  • "Server",
  • "Передача кодирования",
  • "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можно перенаправить выходные данные ведения журнала из пакетов SDK Azure, переопределив метод AzureLogger.log. Это может быть полезно, если вы хотите перенаправить журналы в расположение, отличное от stderr.

Дальнейшие действия

Вы можете создать и запустить тесты локально, выполнив rushx test. Изучите папку test, чтобы просмотреть расширенное использование и поведение общедоступных классов.

Устранение неполадок

Если при использовании этой библиотеки возникают проблемы, вы можете файл проблемы.

Способствует

Если вы хотите внести свой вклад в эту библиотеку, ознакомьтесь с руководством по вкладу, чтобы узнать больше о том, как создавать и тестировать код.

впечатлений