Коллектор OpenTelemetry
Захватывает спаны и трейсы OpenTelemetry — данные распределённой трассировки с подсчётом ошибок и метаданными спанов.

Собираемые данные
| Поле | Описание |
|---|---|
spans | Массив собранных спанов |
traceCount | Количество различных трейсов |
spanCount | Общее количество спанов |
errorCount | Количество спанов с ошибками |
Схема данных
{
"spans": [
{
"traceId": "abc123...",
"spanId": "def456...",
"parentSpanId": null,
"name": "HTTP GET /users",
"kind": "SERVER",
"startTime": 1711878000100,
"endTime": 1711878000350,
"status": "OK",
"attributes": {"http.method": "GET", "http.url": "/users"},
"events": []
}
],
"traceCount": 1,
"spanCount": 5,
"errorCount": 0
}Сводка (отображается в списке отладочных записей):
{
"opentelemetry": {
"spans": 5,
"traces": 1,
"errors": 0
}
}Контракт
use AppDevPanel\Kernel\Collector\OpenTelemetryCollector;
use AppDevPanel\Kernel\Collector\SpanRecord;
$collector->collect(new SpanRecord(
traceId: 'abc123...',
spanId: 'def456...',
name: 'HTTP GET /users',
kind: 'SERVER',
startTime: 1711878000100,
endTime: 1711878000350,
status: 'OK',
attributes: ['http.method' => 'GET'],
));
// Or batch collection
$collector->collectBatch([$span1, $span2, $span3]);INFO
OpenTelemetryCollectorAppDevPanel\Kernel\Collector\OpenTelemetryCollectorCollects Open Telemetry 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..
Как это работает
Коллектор получает спаны от адаптера OpenTelemetry SpanExporter. Когда ваше приложение использует OpenTelemetry SDK для трассировки, спаны экспортируются в этот коллектор вместо (или в дополнение к) внешних бэкендов, таких как Jaeger или Zipkin.
Панель отладки
- Представление трейсов — спаны сгруппированы по ID трейса
- Временная шкала спанов — визуальная временная шкала длительности спанов
- Подсветка ошибок — спаны с ошибками отмечены красным
- Инспекция атрибутов — раскрываемые атрибуты и события спанов