interfaces/ILogger.md


Интерфейс ILogger

Общее описание

Интерфейс определяет контракты для классов, реализующих систему журналирования событий.

Пространство имён: goodboyalex\php_components_pack\interfaces
Версия: 1.0
Доступно с: 1.3.1

Методы интерфейса

Метод log

public function log(MessageType $level, string $message, array $context = []): void;
  • Назначение: добавление сообщения в журнал
  • Параметры:
    • $level — уровень сообщения (MessageType)
    • $message — текст сообщения
    • $context — контекст сообщения (опционально)
  • Возвращаемое значение: void

Метод debug

public function debug(string $message, array $context = []): void;
  • Назначение: добавление отладочного сообщения
  • Параметры:
    • $message — текст сообщения
    • $context — контекст сообщения (опционально)
  • Возвращаемое значение: void

Метод info

public function info(string $message, array $context = []): void;
  • Назначение: добавление информационного сообщения
  • Параметры:
    • $message — текст сообщения
    • $context — контекст сообщения (опционально)
  • Возвращаемое значение: void

Метод warning

public function warning(string $message, array $context = []): void;
  • Назначение: добавление предупреждающего сообщения
  • Параметры:
    • $message — текст сообщения
    • $context — контекст сообщения (опционально)
  • Возвращаемое значение: void

Метод error

public function error(string $message, array $context = []): void;
  • Назначение: добавление сообщения об ошибке
  • Параметры:
    • $message — текст сообщения
    • $context — контекст сообщения (опционально)
  • Возвращаемое значение: void

Рекомендации по применению

  • Выбор уровня:

    • используйте соответствующий метод для каждого типа сообщения
    • учитывайте важность информации
  • Контекст:

    • добавляйте только релевантную информацию
    • избегайте избыточных данных
  • Производительность:

    • учитывайте влияние на производительность
    • используйте соответствующие уровни логирования

Пример использования

// Добавление отладочного сообщения
$logger->debug('Функция успешно выполнена', ['function' => 'processData']);

// Добавление информационного сообщения
$logger->info('Пользователь авторизован', ['user_id' => 123]);

// Добавление предупреждения
$logger->warning('Недостаточно прав доступа', ['user_id' => 456, 'action' => 'delete']);

// Добавление сообщения об ошибке
$logger->error('Произошла ошибка при сохранении данных', ['error' => 'SQL error']);

На главную | Содержание