Skip to content

Jonecuper/logger-javascript-OS-Windows

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Кастомный логгер javascript для Windows

Кастомная функция для записи логов с уровнями, ротацией, именем файла и разделителями.

параметры:

Параметр Значение
по-умолчанию
Описание
message Сообщение для логирования
level 'INFO' Уровень логирования (INFO, ERROR, DEBUG)
isAsync false Указывает, нужно ли использовать асинхронный режим

Возвращает Promise в ассинхронном режиме, в синхронном режиме - ничего не возвращает.

Параметры логгера хранятся в конфигурационном файле, если файла не существует, он будет создан автоматически.

  1. Формат даты через конфигурацию:
  • В конфигурационный файл добавлен параметр dateFormat.
  • Формат даты задается с использованием библиотеки date-fns.
  1. Пользовательский формат даты:
  • Можно указать формат даты, например: yy-MM-dd HH:mm:ss или любой другой формат, поддерживаемый date-fns.

Файл конфигурации по-умолчанию расположен в корне текущей директории:

const CONFIG_PATH = './logConfig.json'

Пример конфигурации (logConfig.json):

{
    "logDir": "C:\\local\\logs\\",
    "logFileName": "custom_log.txt",
    "maxFileSize": 1048576,
    "dateFormat": "yyyy-MM-dd HH:mm:ss"
}

Примеры

Может работать в синхронном и в асинхронном режиме

пример синхронного вызова:
(() => {
    // Синхронное логирование
    customLog('Синхронное логирование с пользовательским форматом даты', 'INFO');
})();
пример асинхронного вызова:
(async () => {
    // Асинхронное логирование
    await customLog('Асинхронное логирование с пользовательским форматом даты', 'INFO', true);  
})();
пример лог файла:
[2024-12-30 22:06:41] [INFO] Синхронное логирование с пользовательским форматом даты
--------------------------------------------------------------------------------
[2024-12-30 22:06:41] [INFO] Асинхронное логирование с пользовательским форматом даты
--------------------------------------------------------------------------------

Зависимости

для работы с кастомными форматами даты и времени требуется библиотека date-fns:

{
  "dependencies": {
    "date-fns": "^4.1.0"
  }
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published