class LoggingService implements LoggingServiceInterface

Сервис для организованного логирования в системе.

Класс предоставляет метод для записи логов в файлы, организованные по каналам и аккаунтам. Каждый аккаунт получает собственную директорию для логов, а внутри неё логи разделяются по каналам. Поддерживает разные уровни логирования на основе предоставленного контекста.

Methods

void
log(string $channel, string $account_name, string $message, array $context = [])

Записывает сообщение лога в указанный канал для определенного аккаунта.

Details

at line 44
void log(string $channel, string $account_name, string $message, array $context = [])

Записывает сообщение лога в указанный канал для определенного аккаунта.

Метод создает индивидуальные файлы логов для каждого канала внутри директории аккаунта. Уровень логирования автоматически определяется на основе содержимого контекста:

  • Если контекст содержит ключ 'exception', используется уровень 'error'
  • В остальных случаях используется уровень 'info'

Parameters

string $channel
string $account_name
string $message
array $context

Return Value

void

Examples

// Запись обычного информационного сообщения
$loggingService->log('account_newsfeed', 'user123', 'Получены данные ленты', ['count' => 15]);
// Запись сообщения об ошибке
$loggingService->log('account_task_likes', 'user123', 'Ошибка при выполнении задачи',
                     ['exception' => $e->getMessage(), 'task_id' => 42]);