/** * @param string $severity * @param string $auditType * @param string $itemName * @param string $itemDescription * @return bool */ public function doLog($severity, $auditType, $itemName, $itemDescription) { $savedInDB = $savedInFile = $savedInSyslog = false; if ($this->isDBEngineActive) { $savedInDB = CEventLog::log($severity, $auditType, "security", $itemName, base64_encode($itemDescription)); } $message = ""; if ($this->isSyslogEngineActive) { $message = $this->messageFormatter->format($auditType, $itemName, $itemDescription); $savedInSyslog = syslog($this->syslogPriority, $message); } if ($this->isFileEngineActive) { if (!$message) { $message = $this->messageFormatter->format($auditType, $itemName, $itemDescription); } $message .= "\n"; $savedInFile = file_put_contents($this->filePath, $message, FILE_APPEND) > 0; } return $savedInDB || $savedInSyslog || $savedInFile; }