fix: produce smaller log records for http exceptions (#3153)

This commit is contained in:
Dag 2022-11-18 21:36:06 +01:00 committed by GitHub
parent 4ac2feb392
commit 88766e6fde
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 2 deletions

View file

@ -152,7 +152,14 @@ class DisplayAction implements ActionInterface
'icon' => $bridge->getIcon() 'icon' => $bridge->getIcon()
]; ];
} catch (\Throwable $e) { } catch (\Throwable $e) {
Logger::error(sprintf('Exception in %s', $bridgeClassName), ['e' => $e]); if ($e instanceof HttpException) {
// Produce a smaller log record for http exceptions
Logger::warning(sprintf('Exception in %s: %s', $bridgeClassName, create_sane_exception_message($e)));
} else {
// Log the exception
Logger::error(sprintf('Exception in %s', $bridgeClassName), ['e' => $e]);
}
$errorCount = logBridgeError($bridge::NAME, $e->getCode()); $errorCount = logBridgeError($bridge::NAME, $e->getCode());
if ($errorCount >= Configuration::getConfig('error', 'report_limit')) { if ($errorCount >= Configuration::getConfig('error', 'report_limit')) {

View file

@ -48,7 +48,7 @@ function get_current_url(): string
function create_sane_exception_message(\Throwable $e): string function create_sane_exception_message(\Throwable $e): string
{ {
return sprintf( return sprintf(
'Exception %s: %s in %s line %s', '%s: %s in %s line %s',
get_class($e), get_class($e),
$e->getMessage(), $e->getMessage(),
trim_path_prefix($e->getFile()), trim_path_prefix($e->getFile()),