README.md 2,7 КБ
Newer Older
Mataruev Sergey's avatar
init    
Mataruev Sergey включено в состав коммита
1
# AppSec.Policy: Logger Library
Черешнев Михаил Николаевич's avatar
Черешнев Михаил Николаевич включено в состав коммита
2

Mataruev Sergey's avatar
init    
Mataruev Sergey включено в состав коммита
3
4
5
Эта библиотека логирования написана для упрощения и централизации работы с логами в Go-проектах. 
Она позволяет настроить глобальный логгер для всего приложения, избавляя от необходимости копировать один и тот же код настройки логирования в каждом сервисе. 
Кроме того, библиотека предоставляет возможность создавать локальные логгеры для специфичных компонентов.
Черешнев Михаил Николаевич's avatar
Черешнев Михаил Николаевич включено в состав коммита
6

Mataruev Sergey's avatar
init    
Mataruev Sergey включено в состав коммита
7
## Зачем это нужно
Черешнев Михаил Николаевич's avatar
Черешнев Михаил Николаевич включено в состав коммита
8

Mataruev Sergey's avatar
init    
Mataruev Sergey включено в состав коммита
9
10
11
- **Централизация:** Вместо дублирования кода настройки логирования во всех сервисах, теперь достаточно один раз настроить глобальный логгер.
- **Гибкость:** Поддержка различных уровней логирования (trace, debug, info, warn, error, fatal, panic) и форматов вывода (цветной вывод для консоли, JSON и другие варианты).
- **Простота интеграции:** Библиотека легко подключается через Go Modules, что делает её использование быстрым и удобным.
Черешнев Михаил Николаевич's avatar
Черешнев Михаил Николаевич включено в состав коммита
12

Mataruev Sergey's avatar
init    
Mataruev Sergey включено в состав коммита
13
## Основные возможности
Черешнев Михаил Николаевич's avatar
Черешнев Михаил Николаевич включено в состав коммита
14

Mataruev Sergey's avatar
init    
Mataruev Sergey включено в состав коммита
15
16
17
18
- **Настройка глобального логгера:** Функция `SetupGlobalLogger` позволяет установить уровень и формат вывода логов, после чего весь проект может использовать глобальный логгер.
- **Создание локальных логгеров:** Функция `CreateLogger` позволяет создать отдельные экземпляры логгера для тех случаев, когда требуется специфическая настройка логирования.
- **Поддержка цветного вывода:** Для удобства чтения в консоли используется цветной вывод уровней логирования.
- **Легкость обновления:** Все изменения в логировании происходят в одном месте, что облегчает поддержку и развитие проекта.
Черешнев Михаил Николаевич's avatar
Черешнев Михаил Николаевич включено в состав коммита
19
20
21

## Установка

Mataruev Sergey's avatar
init    
Mataruev Sergey включено в состав коммита
22
Чтобы подключить библиотеку в проект, выполните:
Черешнев Михаил Николаевич's avatar
Черешнев Михаил Николаевич включено в состав коммита
23

Mataruev Sergey's avatar
init    
Mataruev Sergey включено в состав коммита
24
25
```bash
go get hub.mos.ru/appsecsolutions/appsec-policy/libs/logger