improved error logging
This commit is contained in:
parent
9a84a983d3
commit
a6635f15c5
@ -54,7 +54,7 @@ class ErrorHandler {
|
|||||||
$traceString = $exception->getTraceAsString();
|
$traceString = $exception->getTraceAsString();
|
||||||
|
|
||||||
$logMessage = $message . PHP_EOL . 'Class: ' . $exceptionClass . PHP_EOL . 'Trace:' . PHP_EOL . $traceString;
|
$logMessage = $message . PHP_EOL . 'Class: ' . $exceptionClass . PHP_EOL . 'Trace:' . PHP_EOL . $traceString;
|
||||||
logMessage($logMessage);
|
$this->maniaControl->log($logMessage);
|
||||||
|
|
||||||
if ($this->reportErrors) {
|
if ($this->reportErrors) {
|
||||||
$error = array();
|
$error = array();
|
||||||
@ -142,7 +142,7 @@ class ErrorHandler {
|
|||||||
$traceString = $this->parseBackTrace(debug_backtrace());
|
$traceString = $this->parseBackTrace(debug_backtrace());
|
||||||
|
|
||||||
$logMessage = $message . PHP_EOL . 'File&Line: ' . $fileLine . PHP_EOL . 'Trace: ' . $traceString;
|
$logMessage = $message . PHP_EOL . 'File&Line: ' . $fileLine . PHP_EOL . 'Trace: ' . $traceString;
|
||||||
logMessage($logMessage);
|
$this->maniaControl->log($logMessage);
|
||||||
|
|
||||||
if ($this->reportErrors && !$this->isUserErrorNumber($errorNumber)) {
|
if ($this->reportErrors && !$this->isUserErrorNumber($errorNumber)) {
|
||||||
$error = array();
|
$error = array();
|
||||||
@ -255,7 +255,7 @@ class ErrorHandler {
|
|||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
private function isUserErrorNumber($errorNumber) {
|
private function isUserErrorNumber($errorNumber) {
|
||||||
return ($errorNumber === E_USER_ERROR || $errorNumber === E_USER_WARNING || $errorNumber === E_USER_NOTICE || $errorNumber === E_USER_DEPRECATED);
|
return ($errorNumber & E_USER_ERROR || $errorNumber & E_USER_WARNING || $errorNumber & E_USER_NOTICE || $errorNumber & E_USER_DEPRECATED);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -265,7 +265,7 @@ class ErrorHandler {
|
|||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
private function shouldStopExecution($errorNumber) {
|
private function shouldStopExecution($errorNumber) {
|
||||||
return ($errorNumber === E_ERROR || $errorNumber === E_USER_ERROR || $errorNumber === E_FATAL);
|
return ($errorNumber & E_ERROR || $errorNumber & E_USER_ERROR || $errorNumber & E_FATAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
namespace ManiaControl\Files;
|
namespace ManiaControl\Files;
|
||||||
|
|
||||||
use ManiaControl\Utils\Formatter;
|
|
||||||
use ManiaControl\ManiaControl;
|
use ManiaControl\ManiaControl;
|
||||||
|
use ManiaControl\Utils\Formatter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Files Utility Class
|
* Files Utility Class
|
||||||
@ -77,11 +77,11 @@ abstract class FileUtil {
|
|||||||
public static function loadConfig($fileName) {
|
public static function loadConfig($fileName) {
|
||||||
$fileLocation = ManiaControlDir . 'configs' . DIRECTORY_SEPARATOR . $fileName;
|
$fileLocation = ManiaControlDir . 'configs' . DIRECTORY_SEPARATOR . $fileName;
|
||||||
if (!file_exists($fileLocation)) {
|
if (!file_exists($fileLocation)) {
|
||||||
trigger_error("Config file doesn't exist! ({$fileName})");
|
logMessage("Config File doesn't exist! ({$fileName})");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
if (!is_readable($fileLocation)) {
|
if (!is_readable($fileLocation)) {
|
||||||
trigger_error("Config file isn't readable! Please check your file permissions. ({$fileName})");
|
logMessage("Config File isn't readable! Please check the File Permissions. ({$fileName})");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return simplexml_load_file($fileLocation);
|
return simplexml_load_file($fileLocation);
|
||||||
|
@ -156,13 +156,29 @@ class ManiaControl implements CommandListener, TimerListener {
|
|||||||
$configFileName = ($configId ? $configId : 'server.xml');
|
$configFileName = ($configId ? $configId : 'server.xml');
|
||||||
$this->config = FileUtil::loadConfig($configFileName);
|
$this->config = FileUtil::loadConfig($configFileName);
|
||||||
if (!$this->config) {
|
if (!$this->config) {
|
||||||
trigger_error("Error loading Configuration XML-File! ('{$configFileName}')", E_USER_ERROR);
|
$this->quit("Error loading Configuration XML-File! ('{$configFileName}')", true);
|
||||||
}
|
}
|
||||||
if (!$this->config->server->port || $this->config->server->port == 'port') {
|
if (!$this->config->server->port || $this->config->server->port == 'port') {
|
||||||
trigger_error("Your Configuration File ('{$configFileName}') doesn't seem to be maintained. Please check it again!", E_USER_ERROR);
|
$this->quit("Your Configuration File ('{$configFileName}') doesn't seem to be maintained. Please check it again!", true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Quit ManiaControl and log the given message
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param bool $errorPrefix
|
||||||
|
*/
|
||||||
|
public function quit($message = null, $errorPrefix = false) {
|
||||||
|
if ($message) {
|
||||||
|
if ($errorPrefix) {
|
||||||
|
$message = '[ERROR] ' . $message;
|
||||||
|
}
|
||||||
|
$this->log($message);
|
||||||
|
}
|
||||||
|
exit();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check Connection
|
* Check Connection
|
||||||
*/
|
*/
|
||||||
@ -265,22 +281,6 @@ class ManiaControl implements CommandListener, TimerListener {
|
|||||||
$this->quit("ManiaControl Shutdown requested by '{$player->login}'!");
|
$this->quit("ManiaControl Shutdown requested by '{$player->login}'!");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Quit ManiaControl and log the given message
|
|
||||||
*
|
|
||||||
* @param string $message
|
|
||||||
* @param bool $errorPrefix
|
|
||||||
*/
|
|
||||||
public function quit($message = null, $errorPrefix = false) {
|
|
||||||
if ($message) {
|
|
||||||
if ($errorPrefix) {
|
|
||||||
$message = '[ERROR] ' . $message;
|
|
||||||
}
|
|
||||||
$this->log($message);
|
|
||||||
}
|
|
||||||
exit();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handle PHP Process Shutdown
|
* Handle PHP Process Shutdown
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user