Issue #3377657 by catch, mondrake: Add database query spans to otel traces

merge-requests/5891/head
Alex Pott 2023-12-20 08:15:43 +00:00
parent 9e3a13aad4
commit 0907775505
No known key found for this signature in database
GPG Key ID: BDA67E7EE836E5CE
1 changed files with 14 additions and 0 deletions

View File

@ -339,6 +339,20 @@ trait PerformanceTestTrait {
->setAttribute('http.url', $url)
->startSpan();
$first_byte_span->end($response_wall_time);
$collection = \Drupal::keyValue('performance_test');
$performance_test_data = $collection->get('performance_test_data');
$query_events = $performance_test_data['database_events'] ?? [];
foreach ($query_events as $key => $event) {
// Use the first part of the database query for the span name.
$query_span = $tracer->spanBuilder(substr($event->queryString, 0, 64))
->setStartTimestamp((int) ($event->startTime * $nanoseconds_per_second))
->setAttribute('query.string', $event->queryString)
->setAttribute('query.args', var_export($event->args, TRUE))
->setAttribute('query.caller', var_export($event->caller, TRUE))
->startSpan();
$query_span->end((int) ($event->time * $nanoseconds_per_second));
}
$lcp_timestamp = NULL;
$fcp_timestamp = NULL;
$lcp_size = 0;