Коллектор событий
Захватывает PSR-14 диспетчеризованные события с замерами времени, метаданными слушателей и местоположением в исходном коде.

Собираемые данные
| Поле | Описание |
|---|---|
name | Имя класса события |
event | Сериализованный объект события |
file | Файл исходного кода вызова диспетчеризации |
line | Строка исходного кода вызова диспетчеризации |
time | Временная метка диспетчеризации события |
Схема данных
[
{
"name": "App\\Event\\UserRegistered",
"event": "object@App\\Event\\UserRegistered#12",
"file": "/app/src/UserService.php",
"line": "42",
"time": 1711878000.456
}
]Сводка (отображается в списке отладочных записей):
{
"event": {
"total": 8
}
}Контракт
use AppDevPanel\Kernel\Collector\EventCollector;
$collector->collect(
event: $event, // The dispatched event object
line: '/app/src/UserService.php:42',
);INFO
EventCollectorAppDevPanel\Kernel\Collector\EventCollectorCollects Event data during application lifecycle. реализует SummaryCollectorInterfaceAppDevPanel\Kernel\Collector\SummaryCollectorInterfaceSummary data collector responsibility is to collect summary data for a collector. Summary is used to display a list of previous requests and select one to display full info. Its data set is specific to the list and is reduced compared to full data collected in {@see CollectorInterface}. и зависит от TimelineCollectorAppDevPanel\Kernel\Collector\TimelineCollectorCollects Timeline data during application lifecycle. для интеграции с кросс-коллекторной временной шкалой.
Как это работает
Коллектор получает данные от EventDispatcherInterfaceProxyAppDevPanel\Kernel\Collector\EventDispatcherInterfaceProxyDecorator proxy for Event Dispatcher Interface. Intercepts calls and forwards data to collectors. — декоратора PSR-14 EventDispatcherInterfacePsr\EventDispatcher\EventDispatcherInterfacePSR-14 Event Dispatcher Interface. Defines a dispatcher for events.. Каждый вызов $dispatcher->dispatch($event) перехватывается, замеряется по времени и передаётся коллектору.
Адаптеры фреймворков регистрируют прокси автоматически.
Панель отладки
- Бейджи типов событий — цветовая кодировка по категории события (запрос, ответ, контроллер и т.д.)
- Хронологический список — события отображаются в порядке диспетчеризации с временными метками
- Раскрываемые подробности — нажмите для просмотра полного объекта события и цепочки слушателей
- Счётчик событий — общее количество событий отображается в бейдже боковой панели