Коллектор сервисов
Захватывает вызовы методов сервисов DI-контейнера — вызванный сервис, метод, аргументы, результат и время выполнения.

Собираемые данные
| Поле | Описание |
|---|---|
service | Идентификатор сервиса |
class | Имя класса сервиса |
method | Вызванный метод |
arguments | Аргументы метода |
result | Возвращаемое значение |
status | Статус вызова (success или error) |
error | Сообщение об ошибке при неудаче |
timeStart | Время начала вызова |
timeEnd | Время завершения вызова |
Схема данных
[
{
"service": "App\\Service\\UserService",
"class": "App\\Service\\UserService",
"method": "findById",
"arguments": [42],
"result": {"id": 42, "name": "John"},
"status": "success",
"error": null,
"timeStart": 1711878000.100,
"timeEnd": 1711878000.105
}
]Сводка (отображается в списке отладочных записей):
{
"service": {
"total": 5
}
}Контракт
use AppDevPanel\Kernel\Collector\ServiceCollector;
use AppDevPanel\Kernel\Event\MethodCallRecord;
$collector->collect(new MethodCallRecord(
service: 'App\\Service\\UserService',
class: 'App\\Service\\UserService',
method: 'findById',
arguments: [42],
result: $result,
status: 'success',
timeStart: $start,
timeEnd: $end,
));INFO
ServiceCollectorAppDevPanel\Kernel\Collector\ServiceCollectorCollects Service 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..
Как это работает
Коллектор получает данные от ContainerInterfaceProxyAppDevPanel\Adapter\Yii3\Proxy\ContainerInterfaceProxyDecorator proxy for Container Interface. Intercepts calls and forwards data to collectors., который оборачивает PSR-11 ContainerInterfacePsr\Container\ContainerInterfacePSR-11 Container Interface. Describes the interface of a dependency injection container.. Когда сервисы разрешаются и их методы вызываются через прокси, вызовы перехватываются и записываются.
Панель отладки
- Список вызовов сервисов — все отслеживаемые вызовы методов с классом, методом и временем
- Раскрываемые детали — аргументы и возвращаемые значения
- Индикаторы статуса — значки успеха (зелёный) и ошибки (красный)