Skip to content

Commit 81e0577

Browse files
committed
fixed error handling in worker and added search by request id
1 parent 3af8fc1 commit 81e0577

4 files changed

Lines changed: 20 additions & 1 deletion

File tree

dashboard/js/script.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -687,6 +687,7 @@ function setupFilterHandlers() {
687687
const url = document.getElementById('filter-url').value.trim();
688688
const responseCode = filterResponseCode.value;
689689
const exactCode = filterExactCode.value.trim();
690+
const requestId = document.getElementById('filter-request-id').value.trim();
690691
const bot = document.getElementById('filter-bot').value;
691692
const customEvent = document.getElementById('filter-custom-event').value.trim();
692693
const minTime = document.getElementById('filter-min-time').value.trim();
@@ -696,6 +697,7 @@ function setupFilterHandlers() {
696697

697698
// Add non-empty filters to the activeFilters object
698699
if (url) activeFilters.url = url;
700+
if (requestId) activeFilters.request_id = requestId;
699701

700702
if (responseCode === 'exact' && exactCode) {
701703
activeFilters.response_code = exactCode;
@@ -723,6 +725,7 @@ function setupFilterHandlers() {
723725
document.getElementById('filter-url').value = '';
724726
filterResponseCode.value = '';
725727
filterExactCode.value = '';
728+
document.getElementById('filter-request-id').value = '';
726729
document.getElementById('filter-bot').value = '';
727730
document.getElementById('filter-custom-event').value = '';
728731
document.getElementById('filter-min-time').value = '';
@@ -761,6 +764,9 @@ function setupFilterHandlers() {
761764
case 'url':
762765
filterLabel = `URL: ${value}`;
763766
break;
767+
case 'request_id':
768+
filterLabel = `Request ID: ${value}`;
769+
break;
764770
case 'response_code':
765771
filterLabel = `Code: ${value}`;
766772
break;

dashboard/views/dashboard.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,10 @@
146146
<label for="filter-exact-code" class="form-label">Exact Code</label>
147147
<input type="number" class="form-control" id="filter-exact-code" placeholder="e.g. 404">
148148
</div>
149+
<div class="col-md-3">
150+
<label for="filter-request-id" class="form-label">Request ID</label>
151+
<input type="text" class="form-control" id="filter-request-id" placeholder="e.g. req_1234abcd">
152+
</div>
149153
<div class="col-md-3">
150154
<label for="filter-bot" class="form-label">Bot Requests</label>
151155
<select class="form-select" id="filter-bot">

src/apm/presenter/SqlitePresenter.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,11 +182,18 @@ public function getRequestsData(string $threshold, int $page, int $perPage, stri
182182
$isBot = $_GET['is_bot'] ?? '';
183183
$customEventType = $_GET['custom_event_type'] ?? '';
184184
$minTime = $_GET['min_time'] ?? '';
185+
$requestId = $_GET['request_id'] ?? '';
185186

186187
// Build main query with conditions for URL and response code
187188
$conditions = ['timestamp >= ?'];
188189
$params = [$threshold];
189190

191+
// Add request ID filter (exact match)
192+
if (!empty($requestId)) {
193+
$conditions[] = 'request_id = ?';
194+
$params[] = $requestId;
195+
}
196+
190197
// Add URL filter
191198
if (!empty($url)) {
192199
$conditions[] = 'request_url LIKE ?';

src/commands/WorkerCommand.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,9 @@ public function execute()
213213
break;
214214
}
215215
} catch (\Exception $e) {
216-
$io->red("Failed! {$e->getMessage()}", true);
216+
$io->red("Failed to process metric ID {$metric['id']}: {$e->getMessage()}", true);
217+
// Add to processed IDs to delete the erroneous metric
218+
$processedIds[] = $metric['id'];
217219
// Continue with other messages
218220
}
219221
}

0 commit comments

Comments
 (0)