Skip to content

Commit 3c34eb9

Browse files
authored
improve logging output (#504)
* improve CustomLogger
1 parent dbe7e75 commit 3c34eb9

2 files changed

Lines changed: 48 additions & 4 deletions

File tree

dist-persist/wbstack/src/Logging/CustomLogger.php

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,33 @@ private function doLog( $level, $message, $context ) {
5151
];
5252
}
5353

54-
$payload[ '@type' ] = 'type.googleapis.com/google.devtools.clouderrorreporting.v1beta1.ReportedErrorEvent';
54+
/**
55+
* log levels according to PSR-3: https://www.php-fig.org/psr/psr-3/#11-basics
56+
* debug, info, notice, warning, error, critical, alert, emergency
57+
*/
58+
$logLevelsCloudErrorReporting = ['error', 'critical', 'alert', 'emergency'];
59+
60+
if (in_array($level, $logLevelsCloudErrorReporting)) {
61+
$payload[ '@type' ] = 'type.googleapis.com/google.devtools.clouderrorreporting.v1beta1.ReportedErrorEvent';
62+
}
63+
5564
$payload[ 'severity' ] = $level;
5665
$payload[ 'serviceContext' ] = [
5766
'service' => 'WBaaS MediaWiki',
58-
'version' => '1.0.0'
67+
'version' => MW_VERSION,
68+
];
69+
$payload[ 'context' ] = [
70+
// set in /includes/Defines.php
71+
'mediawiki' => MW_VERSION,
72+
73+
// set via \WBStack\Info\GlobalSet::forDomain
74+
'domain' => $GLOBALS[WBSTACK_INFO_GLOBAL]->requestDomain,
75+
76+
// https://www.php.net/manual/en/function.phpversion.php
77+
'php' => phpversion(),
78+
79+
// https://www.php-fig.org/psr/psr-3/#13-context
80+
'log_context' => $context,
5981
];
6082

6183
$output = json_encode( $payload );

dist/wbstack/src/Logging/CustomLogger.php

Lines changed: 24 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,33 @@ private function doLog( $level, $message, $context ) {
5151
];
5252
}
5353

54-
$payload[ '@type' ] = 'type.googleapis.com/google.devtools.clouderrorreporting.v1beta1.ReportedErrorEvent';
54+
/**
55+
* log levels according to PSR-3: https://www.php-fig.org/psr/psr-3/#11-basics
56+
* debug, info, notice, warning, error, critical, alert, emergency
57+
*/
58+
$logLevelsCloudErrorReporting = ['error', 'critical', 'alert', 'emergency'];
59+
60+
if (in_array($level, $logLevelsCloudErrorReporting)) {
61+
$payload[ '@type' ] = 'type.googleapis.com/google.devtools.clouderrorreporting.v1beta1.ReportedErrorEvent';
62+
}
63+
5564
$payload[ 'severity' ] = $level;
5665
$payload[ 'serviceContext' ] = [
5766
'service' => 'WBaaS MediaWiki',
58-
'version' => '1.0.0'
67+
'version' => MW_VERSION,
68+
];
69+
$payload[ 'context' ] = [
70+
// set in /includes/Defines.php
71+
'mediawiki' => MW_VERSION,
72+
73+
// set via \WBStack\Info\GlobalSet::forDomain
74+
'domain' => $GLOBALS[WBSTACK_INFO_GLOBAL]->requestDomain,
75+
76+
// https://www.php.net/manual/en/function.phpversion.php
77+
'php' => phpversion(),
78+
79+
// https://www.php-fig.org/psr/psr-3/#13-context
80+
'log_context' => $context,
5981
];
6082

6183
$output = json_encode( $payload );

0 commit comments

Comments
 (0)