Как реализовать ведение журнала в Node.js

Kak Realizovat Vedenie Zurnala V Node Js



« Ведение журнала » в node.js играет жизненно важную роль в поддержании всего жизненного цикла процедуры разработки веб-сайта. Таким образом, ведение журнала является наиболее распространенной функцией, которая выполняется разработчиками для время от времени анализа функций кода, анализа данных, а также кода и устранения ошибок на основе анализа кода.

В этой статье объясняется содержание, указанное ниже:

Когда входить в node.js?

Ниже приведены общие уровни ведения журнала в node.js:







  • Информация: Задачи или результаты, подтверждающие оптимизированное выполнение кода.
  • Предупреждать: События, которые необходимо учитывать, чтобы избежать сбоев.
  • Ошибка: События, которые приводят к сбою выполнения кода.
  • Отлаживать: Этот уровень в основном используется разработчиками.

Где осуществляется регистрация?

События журнала могут быть поставлены в очередь, и несколько прослушивателей могут прослушивать очередь и записывать в любой необходимый журнал. Прежде чем окончательно решить, где вести журнал, следует знать, что целевая методология может обрабатывать несколько сообщений журнала. Ниже приведены некоторые распространенные местоположения журналов:



  • стандартный вывод
  • stderr
  • консоль

Это так, что основное « консоль.log() ' и ' консоль.информация() ” методы регистрируются в “ стандартный вывод ». Однако ' консоль.warn() ' и ' консоль.ошибка() ” методы регистрируются в “ stderr ». Эти методы отображают вывод на консоли. Во фронтенде это будет инструментальная консоль программиста.



Как реализовать ведение журнала в Node.js?

Анализ необходимости ведения журнала в различных ситуациях имеет решающее значение для реализации соответствующего подхода к ведению журнала. Вход в node.js может быть реализован с помощью следующих подходов:





  • « консоль.log() «Метод.
  • « консоль.warn() «Метод.
  • « консоль.ошибка() «Метод.
  • « консоль.таблица() «Метод.
  • Отладочный модуль.
  • Пакет Уинстона.

Подход 1: Реализуйте ведение журнала в node.js с помощью метода console.log().

« консоль.log() ” отображает выходные данные на консоли и полезен для периодического тестирования функциональности кода.

Синтаксис



консоль. бревно ( беспорядок )

В этом синтаксисе « беспорядок ” относится к сообщению, которое будет записано на консоль.

Теперь перейдите к приведенному ниже блоку кода, который регистрирует предоставленные сообщения на консоли:

консоль. бревно ( «Это Linuxhint!» ) ;

консоль. бревно ( «Это Node js!» ) ;

Выход

Из этого можно сделать вывод, что указанные сообщения отображаются на консоли соответствующим образом.

Подход 2: Реализуйте вход в node.js с помощью метода console.warn().

« консоль.warn() ” метод выводит на консоль предупреждающее сообщение.

Синтаксис

консоль. предупреждать ( беспорядок )

В данном синтаксисе « беспорядок » указывает сообщение (также пользовательское), которое будет отображаться на консоли.

Теперь перейдите к следующей строке кода, которая отображает специальное предупреждающее сообщение с помощью « консоль.warn() » метод:

консоль. предупреждать ( «Это предупреждение!» ) ;

Выход

Как видно, указанное пользовательское предупреждение отображается соответствующим образом.

Подход 3: Реализуйте вход в node.js с помощью метода console.error().

Этот метод записывает сообщение об ошибке на консоль.

Синтаксис

консоль. ошибка ( [ данные ] [ , ... аргументы ] )

В этом синтаксисе:

  • « данные » относится к основному сообщению.
  • « аргументы » представляют ценности.

Возвращаемое значение

Этот метод возвращает сообщение об ошибке.

Обзор следующего фрагмента кода, который регистрирует сообщение об ошибке при неудовлетворительном условии:

Икс '=' 150 ;
если ( Икс < 100 ) {
консоль. бревно ( 'Хорошо пойти' ) ;
}
еще {
консоль. ошибка ( «Неподходящий номер» ) ;
}

Согласно этому коду:

  • Инициализируйте целое число для анализа условий.
  • После этого примените « если ” так, что если инициализированное целое число меньше “100”, отображается указанное сообщение.
  • В противном случае « еще Оператор ” выполняет сообщение об ошибке в операторе “ консоль.ошибка() метод.

Выход

Эти выходные данные подтверждают, что в случае неудовлетворительного условия на консоли отображается соответствующее сообщение об ошибке.

Подход 4: Реализуйте вход в node.js с помощью метода console.table().

Этот метод создает и отображает таблицу на консоли.

Синтаксис

консоль. стол ( ТД, ТК )

Здесь, ' ТД » представляет данные таблицы, а « ТК » относится к массиву столбцов таблицы.

Теперь выполните приведенный ниже оператор кода, который создает таблицу, дважды присваивая отдельный индекс присвоенным значениям типов видеоданных:

консоль. стол ( [ { Икс : 10 , а : 'Гарри' } , { Икс : пятнадцать , а : 'С' } ] ) ;

Выход

Подход 5: Реализуйте ведение журнала в node.js с помощью «Модуля отладки».

Этот модуль можно использовать для регистрации дополнительной информации о состоянии промежуточного веб-программного обеспечения, например Express, Koa и т. д., когда серверная часть получает интернет-запрос. Промежуточное ПО помещается в конвейер запросов.

Ниже приведены подходы к настройке промежуточного программного обеспечения для ведения журналов:

Пример 1. Настройка промежуточного ПО для ведения журналов из приложения

« приложение.use() Функция монтирует целевую функцию промежуточного программного обеспечения по указанному пути.

Синтаксис

приложение. использовать ( пт, КБ )

В приведенном выше синтаксисе:

  • « пт «» относится к пути, для которого должна быть вызвана функция промежуточного программного обеспечения.
  • « КБ » соответствует функции(ям) промежуточного программного обеспечения.

Ниже приводится демонстрация кода, который настраивает промежуточное программное обеспечение для ведения журналов через приложение и обсуждаемый метод:

константа приложение '=' выражать ( )

константа logПромежуточное ПО '=' требовать ( 'промежуточное ПО для моей регистрации' )

приложение. использовать ( logПромежуточное ПО )

В этом коде создайте приложение Express и включите « мое-промежуточное программное обеспечение для журналирования », чтобы начать работу с промежуточным программным обеспечением для ведения журналов. Наконец, примените « приложение.use() » для монтирования целевой функции промежуточного программного обеспечения по указанному пути.

Пример 2. Настройка промежуточного программного обеспечения для ведения журналов из приложения через маршрутизатор

« маршрутизатор.use() Функция монтирует промежуточное программное обеспечение для маршрутов, обслуживаемых через целевой маршрутизатор.

Синтаксис

маршрутизатор. использовать ( для, функция )

В этом синтаксисе:

  • « пт относится к пути промежуточного программного обеспечения.
  • « функция соответствует функции, переданной в качестве обратного вызова.

В приведенном ниже примере настраивается промежуточное программное обеспечение для ведения журналов с помощью объекта маршрутизатора и параметра « маршрутизатор.use() » функция:

константа маршрутизатор '=' выражать. Маршрутизатор ( )

константа rtLoggingПромежуточное ПО '=' требовать ( 'промежуточное программное обеспечение для регистрации моего маршрута' )

маршрутизатор. использовать ( rtLoggingПромежуточное ПО )

В этом коде:

  • « экспресс.Маршрутизатор() Функция создает новый объект маршрутизатора.
  • После этого включите « мое-маршрутное-промежуточное программное обеспечение и аналогичным образом используйте « маршрутизатор.use() ” для монтирования промежуточного программного обеспечения для маршрутов, обслуживаемых целевым маршрутизатором.

Подход 6: Реализуйте ведение журнала в node.js с помощью «Пакета Winston».

Этот конкретный пакет включает в себя варианты хранения, несколько уровней журнала, запросы и профилировщик. Ниже приведена демонстрация кода, реализующего ведение журнала с помощью этого подхода:

константа Икс '=' выражать ( )
константа включать '=' требовать ( 'Уинстон' )
константа консольтранспорт '=' новый включать. транспорты . Консоль ( )
константа выбирает '=' {
транспорты : [ консольтранспорт ]
}
константа лесоруб '=' новый включать. createLogger ( выбирает )
функция displayRequest ( запрос, разрешение, следующий ) {
регистратор. Информация ( требование URL )
следующий ( )
}
Икс. использовать ( displayRequest )
функция displayError ( ошибка, запрос, разрешение, следующий ) {
регистратор. ошибка ( ошибаться )
следующий ( )
}
Икс. использовать ( displayError )

В этом коде:

  • Можно настроить несколько транспортов с фильтрацией и настроить собственные средства форматирования.
  • Кроме того, в разных функциях указываются несколько экземпляров регистратора, например: « logger.info() ' и ' logger.error() ».
  • Эти регистраторы отображают информацию и сообщения об ошибках соответственно.
  • В этом коде регистрируется только запрошенный URL-адрес.

Приведенные ниже параметры принимаются регистраторами:

Имя По умолчанию Описание
формат Уинстон.format.json Форматирует информационные сообщения
тихий ЛОЖЬ Если это правда, все журналы приостанавливаются.
выходOnError Истинный Если false, обработанные исключения не вызывают процесс.
уровни Winston.config.npm.levels Уровни относятся к приоритетам журналов.

Заключение

Вход в node.js может быть реализован через « консоль.log() метод, метод « консоль.warn() метод, метод « консоль.ошибка() метод, метод « консоль.таблица() метод, метод « Отладочный модуль » или через « Пакет Уинстона ». Консольные методы отображают информацию и сообщения об ошибках. Модуль отладки регистрирует дополнительную информацию о состоянии промежуточного веб-программного обеспечения, а пакет Winston содержит параметры хранения и различные уровни журналирования.