]> scripts.mit.edu Git - autoinstallsdev/mediawiki.git/blob - includes/debug/logger/monolog/WikiProcessor.php
MediaWiki 1.30.2
[autoinstallsdev/mediawiki.git] / includes / debug / logger / monolog / WikiProcessor.php
1 <?php
2 /**
3  * This program is free software; you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License as published by
5  * the Free Software Foundation; either version 2 of the License, or
6  * (at your option) any later version.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License along
14  * with this program; if not, write to the Free Software Foundation, Inc.,
15  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
16  * http://www.gnu.org/copyleft/gpl.html
17  *
18  * @file
19  */
20
21 namespace MediaWiki\Logger\Monolog;
22
23 /**
24  * Annotate log records with request-global metadata, such as the hostname,
25  * wiki / request ID, and MediaWiki version.
26  *
27  * @since 1.25
28  * @copyright © 2013 Wikimedia Foundation and contributors
29  */
30 class WikiProcessor {
31
32         /**
33          * @param array $record
34          * @return array
35          */
36         public function __invoke( array $record ) {
37                 global $wgVersion;
38                 $record['extra']['host'] = wfHostname();
39                 $record['extra']['wiki'] = wfWikiID();
40                 $record['extra']['mwversion'] = $wgVersion;
41                 $record['extra']['reqId'] = \WebRequest::getRequestId();
42                 if ( PHP_SAPI === 'cli' && isset( $_SERVER['argv'] ) ) {
43                         $record['extra']['cli_argv'] = implode( ' ', $_SERVER['argv'] );
44                 }
45                 return $record;
46         }
47
48 }