mirror of
https://github.com/Seldaek/monolog.git
synced 2025-08-08 06:06:40 +02:00
added ProcessIdProcessor to inject pid to records #165
This commit is contained in:
38
src/Monolog/Processor/ProcessIdProcessor.php
Normal file
38
src/Monolog/Processor/ProcessIdProcessor.php
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This file is part of the Monolog package.
|
||||||
|
*
|
||||||
|
* (c) Jordi Boggiano <j.boggiano@seld.be>
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view the LICENSE
|
||||||
|
* file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Monolog\Processor;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adds value of getmypid into records
|
||||||
|
*
|
||||||
|
* @author Andreas Hörnicke
|
||||||
|
*/
|
||||||
|
class ProcessIdProcessor
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @param array $record
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function __invoke(array $record)
|
||||||
|
{
|
||||||
|
$pid = getmypid();
|
||||||
|
|
||||||
|
$record['extra'] = array_merge(
|
||||||
|
$record['extra'],
|
||||||
|
array(
|
||||||
|
'process_id' => $pid,
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
return $record;
|
||||||
|
}
|
||||||
|
}
|
29
tests/Monolog/Processor/ProcessIdProcessorTest.php
Normal file
29
tests/Monolog/Processor/ProcessIdProcessorTest.php
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This file is part of the Monolog package.
|
||||||
|
*
|
||||||
|
* (c) Jordi Boggiano <j.boggiano@seld.be>
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view the LICENSE
|
||||||
|
* file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Monolog\Processor;
|
||||||
|
|
||||||
|
use Monolog\TestCase;
|
||||||
|
|
||||||
|
class ProcessIdProcessorTest extends TestCase
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @covers Monolog\Processor\ProcessIdProcessor::__invoke
|
||||||
|
*/
|
||||||
|
public function testProcessor()
|
||||||
|
{
|
||||||
|
$processor = new ProcessIdProcessor();
|
||||||
|
$record = $processor($this->getRecord());
|
||||||
|
$this->assertArrayHasKey('process_id', $record['extra']);
|
||||||
|
$this->assertInternalType('int', $record['extra']['process_id']);
|
||||||
|
$this->assertGreaterThan(0, $record['extra']['process_id']);
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user