@dlabs71/d-logger-node
v1.1.0
Published
Logging library for node js applications. Based on d-logger
Downloads
6
Readme
D-logger-node
Библиотека для ведения журнала логирования JS/Vue2/Vue3 приложений.
Является расширением библиотеки @dlabs71/d-logger.
Предоставляет возможность логирования в файл по средствам предоставляемого FileAppender и методов управления данными
файлами в расширенном классе DLogger.
Установка NPM
npm i @dlabs71/d-logger-nodeИспользование
Данная библиотека может быть использована в любом js приложении, вне зависимости от фреймворка. Также она предоставляет поддержку подключения к Vue.js приложению через плагин.
Подключение к Vue.js приложению
Для использования d-logger-node во Vue приложении, импортируйте DLoggerPlugin или DLoggerNodePlugin плагин и подключите его.
Все параметры плагина соответствуют плагину DLoggerPlugin из библиотеки @dlabs71/d-logger.
main.js
import { DLoggerPlugin } from '@dlabs71/d-logger-node';
Vue.use(DLoggerPlugin);
// or
const loggerOpts = {
level: "info"
};
Vue.use(DLoggerPlugin, {
logConfig: loggerOpts
});Параметры настройки плагина:
| Параметр | Тип | Значение по умолчанию | Описание
| :------------| :---------| :-------------------------| :-------------------------------------
| level | string | debug | Устанавливает уровень логирования |
| template | function | null | Функция определяющая шаблон строки логирования (шаблоны) |
| appenders | array | [] | Список апендеров, реализующих класс LogAppender. По умолчанию сразу доступен ConsoleAppender (аппендеры)|
| stepInStack | number | 6 | Индекс в стеке вызовов ошибки для определения файла и позиции вызова метода логирования. Если библиотека показывает не верный файл вызова метода логирования, то необходимо поменять данный параметр.
| dateL10n | string | en | Локализация даты в логах (en, ru, ...). Для всех аппендеров по умолчанию. |
Далее вы можете использовать её через this.dlog как в примере ниже:
example.vue
<template></template>
<script>
export default {
name: 'example',
methods: {
process() {
this.dlog.debug("Starting method process");
// code method
this.dlog.debug("Ending method process");
}
}
}
</script>example.vue (For Vue3 composition API)
<template></template>
<script setup>
import {useDLog} from '@dlabs71/d-logger';
const log = useDLog();
const process = () => {
log.debug("Starting method process");
// code method
log.debug("Ending method process");
}
</script>Использование логгера без плагина Vue.js
Для использования логгера без плагина Vue.js достаточно импортировать dlog из @dlabs71/d-logger-node. Вы получаете,
настроенный по умолчанию, экземпляр класса DLoggerNode. Он будет использовать ConsoleAppender в качестве единственного
и основного аппендера логирования (Логгер).
import {dlog} from '@dlabs71/d-logger-node';
function exampleFunc(param1, param2) {
dlog.info("Start exampleFunc with parameters: param1 = ", param1, ", param2 = ", param2);
}Логгер можно перенастроить, для этого есть метод configure. Про его использование читайте в
документации проекта @dlabs71/d-logger Метод configure.
import {dlog} from '@dlabs71/d-logger-node';
dlog.configure({
level: "error"
});
function exampleFunc(param1, param2) {
dlog.info("Start exampleFunc with parameters: param1 = ", param1, ", param2 = ", param2);
}Более подробную документацию читайте в разделе Документация текущего проекта и в разделе Документация проекта @dlabs71/d-logger
Документация
Оглавление
1. Расширенный логгер - DLoggerNode
Логгер представляет собой экземпляр класса DLoggerNode, который наследует класс DLogger из библиотеки @dlabs71/d-logger.
Для управления журналом логирования существуют специальные классы, наследующие класс LogAppender (далее аппендеры).
Данная библиотека предоставляет аппендер, позволяющий логировать в файлы.
FileAppender- аппендер использующий файлы для записи событий логирования
Наряду со стандартными методами DLogger, про которые можно прочитать здесь.
DLoggerNode предоставляет ряд дополнительных методов для работы с FileAppender.
1.1 Методы конфигурации и управления аппендерами
1.1.1 Метод addFileAppender
Метод для добавления FileAppender. Параметры функции описаны в таблице ниже
| Параметр | Тип | Значение по умолчанию | Описание | :---------------| :--------| :---------------------------| :------------------------------------- | pathToDir | string | | Обязательное для заполнения. Путь до директории лог файлов. | isRotatingFiles | boolean | false | Активация механизма ротации файлов (удаление старых файлов) | filePrefix | string | null | Префикс для файлов логирования | level | string | null | Устанавливает уровень логирования аппендера | template | function | null | Функция определяющая шаблон строки логирования аппендера (шаблоны). | stepInStack | number | config.stepInStack | Индекс в стеке вызовов ошибки для определения файла и позиции вызова метода логирования. Если библиотека показывает не верный файл вызова метода логирования, то необходимо поменять данный параметр.
Пример использования:
import {dlog} from '@dlabs71/d-logger-node';
dlog.addFileAppender('/var/log/app', true);1.1.2 Метод getFileAppenders
Метод для получения списка всех FileAppender-ов.
import {dlog} from '@dlabs71/d-logger-node';
dlog.addFileAppender('/var/log/app', true);
let fileAppenders = dlog.getFileAppenders();
// fileAppenders = [FileAppender] 1.1.3 Метод existFileAppender
Метод для проверки существования FileAppender-ов в списке аппендеров
import {dlog} from '@dlabs71/d-logger-node';
dlog.addFileAppender('/var/log/app', true);
let exist = dlog.existFileAppender();
// exist = true1.1.4 Метод deleteAllFileLogs
Метод для удаления всех лог файлов
import {dlog} from '@dlabs71/d-logger-node';
dlog.addFileAppender('/var/log/app', true);
dlog.deleteAllFileLogs();Больше информации можно найти в разделе Документация проекта @dlabs71/d-logger
