refactor(admin_audit): improve audit parameter handling

refactor(admin_audit): improve audit parameter handling

refactor(admin_audit): improve audit parameter handling

- clarify missing-parameter validation and logging;
- support DateTimeInterface values;
- simplify the vsprintf invocation.

Signed-off-by: Josh <josh.t.richards@gmail.com>
pull/63305/head
Josh 4 days ago committed by GitHub
parent 9776045059
commit ca7ee33eb4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 34
      apps/admin_audit/lib/Actions/Action.php

@ -33,37 +33,31 @@ class Action {
): void {
foreach ($elements as $element) {
if (!array_key_exists($element, $params)) {
if ($obfuscateParameters) {
$this->logger->critical(
'$params["' . $element . '"] was missing.',
['app' => 'admin_audit']
);
} else {
$this->logger->critical(
'$params["' . $element . '"] was missing. Transferred value: {params}',
['app' => 'admin_audit', 'params' => $params]
);
$message = '$params["' . $element . '"] was missing.';
$context = ['app' => 'admin_audit'];
if (!$obfuscateParameters) {
$message .= ' Transferred value: {params}';
$context['params'] = $params;
}
$this->logger->critical($message, $context);
return;
}
}
$replaceArray = [];
foreach ($elements as $element) {
if ($params[$element] instanceof \DateTime) {
$params[$element] = $params[$element]->format('Y-m-d H:i:s');
$value = $params[$element];
if ($value instanceof \DateTimeInterface) {
$value = $value->format('Y-m-d H:i:s');
}
$replaceArray[] = $params[$element];
$replaceArray[] = $value;
}
$this->logger->info(
vsprintf(
$text,
$replaceArray
),
[
'app' => 'admin_audit'
]
vsprintf($text, $replaceArray),
['app' => 'admin_audit'],
);
}
}

Loading…
Cancel
Save