Skip to content

Commit 8ab5ebb

Browse files
committed
Allow extra request data to be sent to the log
1 parent c730b42 commit 8ab5ebb

3 files changed

Lines changed: 24 additions & 10 deletions

File tree

src/Logger.php

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -340,17 +340,25 @@ private function serializeException($argument_name, $exception, array &$context)
340340
/**
341341
* {@inheritdoc}
342342
*/
343-
public function requestSummary($exec_time_in_s, $memory_usage, $query_count, $query_exec_time)
343+
public function requestSummary($exec_time_in_s, $memory_usage, $query_count, $query_exec_time, array $extra = [])
344344
{
345345
$event_name = $this->env_arguments['sapi'] == 'cli' ? 'cli_request' : 'http_request';
346346

347-
return $this->event($event_name, 'Request {signature} done in {exec_time} miliseconds', array_merge($this->request_summary_arguments, $this->response_summary_arguments, [
348-
'signature' => $this->request_signature,
349-
'exec_time' => $exec_time_in_s > 0 ? ceil($exec_time_in_s * 1000) : 0, // Log execution time in ms
350-
'memory_usage' => $memory_usage,
351-
'query_count' => $query_count,
352-
'query_time' => $query_exec_time > 0 ? ceil($query_exec_time * 1000) : 0, // Log execution time in ms
353-
]));
347+
return $this->event($event_name,
348+
'Request {signature} done in {exec_time} miliseconds',
349+
array_merge(
350+
$this->request_summary_arguments,
351+
$this->response_summary_arguments,
352+
$extra,
353+
[
354+
'signature' => $this->request_signature,
355+
'exec_time' => $exec_time_in_s > 0 ? ceil($exec_time_in_s * 1000) : 0, // Log execution time in ms
356+
'memory_usage' => $memory_usage,
357+
'query_count' => $query_count,
358+
'query_time' => $query_exec_time > 0 ? ceil($query_exec_time * 1000) : 0, // Log execution time in ms
359+
]
360+
)
361+
);
354362
}
355363

356364
/**

src/LoggerInterface.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,8 +125,9 @@ public function flushBufferOnShutdown();
125125
* @param int $memory_usage
126126
* @param int $query_count
127127
* @param float $query_exec_time
128+
* @param array $extra
128129
*/
129-
public function requestSummary($exec_time_in_s, $memory_usage, $query_count, $query_exec_time);
130+
public function requestSummary($exec_time_in_s, $memory_usage, $query_count, $query_exec_time, array $extra = []);
130131

131132
/**
132133
* Log an event (info with mandatory event attribute).

test/src/LoggerTest.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,10 @@ public function testRequestSummary()
440440
0.356,
441441
1024 * 1024,
442442
15,
443-
0.235
443+
0.235,
444+
[
445+
'first' => 'second'
446+
]
444447
);
445448

446449
$this->assertCount(1, $this->logger->getBuffer());
@@ -454,5 +457,7 @@ public function testRequestSummary()
454457
$this->assertEquals(1048576, $this->logger->getBuffer()[0]['context']['memory_usage']);
455458
$this->assertEquals(15, $this->logger->getBuffer()[0]['context']['query_count']);
456459
$this->assertEquals(235, $this->logger->getBuffer()[0]['context']['query_time']);
460+
$this->assertArrayHasKey('first', $this->logger->getBuffer()[0]['context']);
461+
$this->assertSame('second', $this->logger->getBuffer()[0]['context']['first']);
457462
}
458463
}

0 commit comments

Comments
 (0)