Queue Collector
Captures message queue operations — dispatched messages, processing status, failures, and duplicate detection.

What It Captures
| Field | Description |
|---|---|
pushes | Messages pushed to queues, grouped by queue name |
statuses | Message status updates (ID and status) |
processingMessages | Messages currently being processed |
messages | Dispatched/handled messages with metadata |
messageCount | Total message count |
failedCount | Number of failed messages |
Data Schema
{
"pushes": {
"default": [...]
},
"statuses": [
{"id": "msg-1", "status": "handled"}
],
"processingMessages": {},
"messages": [...],
"messageCount": 3,
"failedCount": 0,
"duplicates": {
"groups": [],
"totalDuplicatedCount": 0
}
}Summary (shown in debug entry list):
{
"queue": {
"countPushes": 2,
"countStatuses": 1,
"countProcessingMessages": 0,
"messageCount": 3,
"failedCount": 0,
"duplicateGroups": 0,
"totalDuplicatedCount": 0
}
}Contract
use AppDevPanel\Kernel\Collector\QueueCollector;
use AppDevPanel\Kernel\Collector\MessageRecord;
// Log a dispatched/handled message
$collector->logMessage(new MessageRecord(
class: 'App\\Message\\SendNotification',
status: 'dispatched',
queue: 'default',
handlerClass: 'App\\Handler\\NotificationHandler',
));
// Or use individual methods
$collector->collectPush(queueName: 'default', message: $message);
$collector->collectStatus(id: 'msg-1', status: 'handled');INFO
QueueCollectorAppDevPanel\Kernel\Collector\QueueCollectorCaptures message queue and message bus operations. implements 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}., depends on TimelineCollectorAppDevPanel\Kernel\Collector\TimelineCollectorCollects Timeline data during application lifecycle., and uses DuplicateDetectionTraitAppDevPanel\Kernel\Collector\DuplicateDetectionTraitDetects duplicate items in collector data by grouping them by a key..
How It Works
Framework adapters intercept message bus/queue operations:
- Symfony: Messenger middleware and event listeners
- Laravel: Queue event listeners (
JobProcessing,JobProcessed,JobFailed) - Yii 3: Queue proxy decorator
Debug Panel
- Message list — all dispatched and handled messages with status
- Queue grouping — messages grouped by queue name
- Status badges — dispatched (blue), handled (green), failed (red)
- Duplicate detection — highlights repeated identical messages