log_handlers/ConsoleHandler.md


Класс ConsoleHandler

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

Описание

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

Основные характеристики

  • Цветная разметка: поддержка ANSI-кодов для разных уровней
  • Настраиваемые цвета: возможность переопределения цветовой схемы
  • Форматирование: использует ILogFormatter для форматирования сообщений

Свойства класса

  • formatter: объект форматера сообщений
  • config: массив конфигурации

Методы класса

Основные методы

  • handle(): обработка и вывод сообщения в консоль
  • setColorScheme(): установка пользовательской цветовой схемы

Конфигурация

Пример настроек:

$config = [
    'color' => [
        'DEBUG' => "\033[36m",    // голубой
        'INFO' => "\033[32m",     // зелёный
        'WARNING' => "\033[33m",  // жёлтый
        'ERROR' => "\033[31m"     // красный
    ]
];

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

// Создание обработчика
$formatter = new DefaultLogFormatter();
$handler = new ConsoleHandler();
$handler->formatter = $formatter;
$colorScheme = [
    'DEBUG' => "\033[36m",
    'INFO' => "\033[32m",
    'WARNING' => "\033[33m",
    'ERROR' => "\033[31m"
    ];
    
$handler->setColorScheme($colorScheme);

// Обработка сообщения
$handler->handle(
    MessageType::INFO,
    'Операция выполнена успешно',
    ['user_id' => 123]
);

Особенности реализации

  • ANSI-коды: поддержка цветной консоли
  • Сброс цвета: автоматический возврат к стандартному цвету
  • Гибкая настройка: возможность изменения цветовой схемы
  • Форматирование: использование установленного форматера

Рекомендации по использованию

  1. Настройка цветов:

    • Убедитесь в поддержке ANSI-кодов вашей консолью
    • Проверьте корректность заданных цветовых кодов
  2. Обработка ошибок:

    • Добавьте проверку доступности консоли
    • Обработайте случаи отсутствия поддержки цветов

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