<?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\Logger; /** * Injects Git branch and Git commit SHA in all records * * @author Nick Otter * @author Jordi Boggiano <j.boggiano@seld.be> */ class GitProcessor implements ProcessorInterface { private $level; private static $cache; public function __construct($level = Logger::DEBUG) { $this->level = Logger::toMonologLevel($level); } /** * @param array $record * @return array */ public function __invoke(array $record) { // return if the level is not high enough if ($record['level'] < $this->level) { return $record; } $record['extra']['git'] = self::getGitInfo(); return $record; } private static function getGitInfo() { if (self::$cache) { return self::$cache; } $branches = `git branch -v --no-abbrev`; if ($branches && preg_match('{^\* (.+?)\s+([a-f0-9]{40})(?:\s|$)}m', $branches, $matches)) { return self::$cache = array( 'branch' => $matches[1], 'commit' => $matches[2], ); } return self::$cache = array(); } }
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
GitProcessor.php | File | 1.42 KB | 0644 |
|
IntrospectionProcessor.php | File | 3.48 KB | 0644 |
|
MemoryPeakUsageProcessor.php | File | 790 B | 0644 |
|
MemoryProcessor.php | File | 1.79 KB | 0644 |
|
MemoryUsageProcessor.php | File | 771 B | 0644 |
|
MercurialProcessor.php | File | 1.38 KB | 0644 |
|
ProcessIdProcessor.php | File | 604 B | 0644 |
|
ProcessorInterface.php | File | 521 B | 0644 |
|
PsrLogMessageProcessor.php | File | 2.43 KB | 0644 |
|
TagProcessor.php | File | 850 B | 0644 |
|
UidProcessor.php | File | 1.2 KB | 0644 |
|
WebProcessor.php | File | 3.16 KB | 0644 |
|