diff --git a/docs/ru/interfaces/logger.md b/docs/ru/interfaces/logger.md
index e029ece..c564bbb 100644
--- a/docs/ru/interfaces/logger.md
+++ b/docs/ru/interfaces/logger.md
@@ -8,7 +8,7 @@
-Можно заметить что все сервисы внутри ядра SVET передают в логгер информацию для удобства отладки и программирования. Это поведение можно настроить(например отключить логи ядра полностью) при создании класса ```SVET``` с помощью ```SVETBuilder```. Так же, можно заметить что логгер находится за пределами ядра и является интерфейсом взаимодействия с пользователем. Это означает что его можно использовать для своих собственных целей даже если логирование самого ядра отключено. Для этого у класса ```Logger``` есть публичные методы для логирования.
+Можно заметить что все сервисы внутри ядра **SVET** передают в логгер информацию для удобства отладки и программирования. Это поведение можно настроить(например отключить логи ядра полностью) при создании класса ```SVET``` с помощью ```SVETBuilder```. Так же, можно заметить что логгер находится за пределами ядра и является интерфейсом взаимодействия с пользователем. Это означает что его можно использовать для своих собственных целей даже если логирование самого ядра отключено. Для этого у класса ```Logger``` есть публичные методы для логирования.
## Публичные методы:
@@ -63,3 +63,62 @@
[ERROR] Core: Core changed!!! //Сообщение от ядра
[ERROR]: Exception! //Если initiator не передан
[ERROR] main.cpp: Hello world! //Если initiator передан и не равен nullptr
+
+## Создание Logger
+
+Создание экземпляра ```Logger``` происходит в методе ```SVET::Start``` используя параметры указанные через ```LoggerOptions``` в методе ```SVETBuilder::SetLogger```. Вам обязательно необходимо установить параметры логгирования, в противном случае проект **не будет скомпилирован**.
+
+### Пример получения Logger
+
+ std::unique_ptr svet;
+ Logger *logger;
+ void setup()
+ {
+ auto builder = SVETBuilder::Setup()->SetLogger(LoggerOptions()); //Установка параметров логгера
+ svet = std::make_unique(SVET(builder));
+ svet->Start();
+ logger = svet->SLogger.get();
+ }
+
+В данном случае будут использованы параметры по умолчанию указанные в конструкторе ```LoggerOptions```
+
+### Установка своих параметров
+
+Конструктор ```LoggerOptions``` принимает в себя следующие параметры:
+
+ MessageType coreLoggerLevel,
+ MessageType userLoggerLevel,
+ bool useColor,
+ short baudRate
+
+Где
+
+```coreLoggerLevel``` - указание уровня с которого будет производится логирование сообщений ядра
+
+```userLoggerLevel``` - указание уровня с которого будет производится логирование сообщений разработчика
+
+```useColor``` - указание вывода цветных сообщений
+
+```baudRate``` - указание скорости работы Serial порта
+
+В свою очередь ```MessageType``` является ```enum``` с следующими значениями:
+
+ INFO, - Вывод сообщений через методы Info, Warn, Error
+ WARN, - Вывод сообщений через методы Warn, Error
+ ERROR, - Вывод сообщений только через метод Error
+ NONE - Отсутствие вывода
+
+Таким образом можно управлять выводом **SVET** и выводом разработчика в зависимости от ситуации.
+
+#### Отключение Logger
+
+Если вам необходимо полностью перехватить работу с классом ```Serial```, вы можете отключить ```Logger``` и использовать ```Serial``` по своему назначению не боясь что кто-то вмешивается в его работу. Для этого необходимо установить параметры ```coreLoggerLevel``` и ```userLoggerLevel``` в значения ```NONE```. В этом случае ```Logger``` не будет выполнять комманду ```Serial.begin()``` и логгировать сообщения поступающие из ядра и от пользователя.
+
+Пример:
+
+ auto builder = SVETBuilder::Setup()->SetLogger(LoggerOptions(NONE, NONE));
+
+### Время жизни Logger
+Экземпляр класса ```Logger``` существует внутри обьекта ```SVET``` в качестве поля ```SLogger``` _(SvetLogger или ServiceLogger)_. Вам не нужно создавать ```Logger``` самостоятельно если вы планируете использовать платформу **SVET**.
+
+```Logger``` является ```Singleton``` сервисом. Это сделано для того чтобы избежать излишнего расходования ресурсов микроконтроллера и не загружать его _"кучу"_. Экземпляр ```SLogger``` существует с момента выхода из метода ```SVET::Start``` до удаления объекта ```SVET``` (по сути при правильном использовании **SVET** можно считать что ```SLogger``` существует до конца выполнения программы).