diff options
author | Tiago Ribeiro <tlr@seegno.com> | 2012-04-20 16:44:33 +0100 |
---|---|---|
committer | Tiago Ribeiro <tlr@seegno.com> | 2012-04-20 16:44:33 +0100 |
commit | c8c231f177e9c3d8fa81967a4c4a73cc8c685e5c (patch) | |
tree | 37d417d871cbcb5c815060f12f64f012ceaf7ed9 | |
parent | d348b2c2529f8468ba27189b99d4eed247ebac7c (diff) | |
download | monolog-c8c231f177e9c3d8fa81967a4c4a73cc8c685e5c.zip monolog-c8c231f177e9c3d8fa81967a4c4a73cc8c685e5c.tar.gz monolog-c8c231f177e9c3d8fa81967a4c4a73cc8c685e5c.tar.bz2 |
Added referer to extra parameter
-rw-r--r-- | src/Monolog/Processor/WebProcessor.php | 5 | ||||
-rw-r--r-- | tests/Monolog/Handler/AbstractProcessingHandlerTest.php | 3 | ||||
-rw-r--r-- | tests/Monolog/Processor/WebProcessorTest.php | 15 |
3 files changed, 22 insertions, 1 deletions
diff --git a/src/Monolog/Processor/WebProcessor.php b/src/Monolog/Processor/WebProcessor.php index 035606c..eeea07e 100644 --- a/src/Monolog/Processor/WebProcessor.php +++ b/src/Monolog/Processor/WebProcessor.php @@ -46,12 +46,17 @@ class WebProcessor return $record; } + if (!isset($this->serverData['HTTP_REFERER'])) { + $this->serverData['HTTP_REFERER'] = null; + } + $record['extra'] = array_merge( $record['extra'], array( 'url' => $this->serverData['REQUEST_URI'], 'ip' => $this->serverData['REMOTE_ADDR'], 'http_method' => $this->serverData['REQUEST_METHOD'], + 'referer' => $this->serverData['HTTP_REFERER'], ) ); diff --git a/tests/Monolog/Handler/AbstractProcessingHandlerTest.php b/tests/Monolog/Handler/AbstractProcessingHandlerTest.php index b9cd350..ea6591d 100644 --- a/tests/Monolog/Handler/AbstractProcessingHandlerTest.php +++ b/tests/Monolog/Handler/AbstractProcessingHandlerTest.php @@ -64,6 +64,7 @@ class AbstractProcessingHandlerTest extends TestCase 'REQUEST_URI' => '', 'REQUEST_METHOD' => '', 'REMOTE_ADDR' => '', + 'REQUEST_URI' => '', ))); $handledRecord = null; $handler->expects($this->once()) @@ -73,6 +74,6 @@ class AbstractProcessingHandlerTest extends TestCase })) ; $handler->handle($this->getRecord()); - $this->assertEquals(3, count($handledRecord['extra'])); + $this->assertEquals(4, count($handledRecord['extra'])); } } diff --git a/tests/Monolog/Processor/WebProcessorTest.php b/tests/Monolog/Processor/WebProcessorTest.php index 060cbb3..f055f30 100644 --- a/tests/Monolog/Processor/WebProcessorTest.php +++ b/tests/Monolog/Processor/WebProcessorTest.php @@ -21,12 +21,15 @@ class WebProcessorTest extends TestCase 'REQUEST_URI' => 'A', 'REMOTE_ADDR' => 'B', 'REQUEST_METHOD' => 'C', + 'HTTP_REFERER' => 'D', ); + $processor = new WebProcessor($server); $record = $processor($this->getRecord()); $this->assertEquals($server['REQUEST_URI'], $record['extra']['url']); $this->assertEquals($server['REMOTE_ADDR'], $record['extra']['ip']); $this->assertEquals($server['REQUEST_METHOD'], $record['extra']['http_method']); + $this->assertEquals($server['HTTP_REFERER'], $record['extra']['referer']); } public function testProcessorDoNothingIfNoRequestUri() @@ -40,6 +43,18 @@ class WebProcessorTest extends TestCase $this->assertEmpty($record['extra']); } + public function testProcessorReturnNullIfNoHttpReferer() + { + $server = array( + 'REQUEST_URI' => 'A', + 'REMOTE_ADDR' => 'B', + 'REQUEST_METHOD' => 'C', + ); + $processor = new WebProcessor($server); + $record = $processor($this->getRecord()); + $this->assertNull($record['extra']['referer']); + } + /** * @expectedException UnexpectedValueException */ |