feat: update error codes in the health API
This commit is contained in:
parent
78a4091f62
commit
53807ab47c
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
use Appwrite\Utopia\Response;
|
use Appwrite\Utopia\Response;
|
||||||
use Utopia\App;
|
use Utopia\App;
|
||||||
use Utopia\Exception;
|
use Appwrite\Extend\Exception;
|
||||||
use Utopia\Storage\Device\Local;
|
use Utopia\Storage\Device\Local;
|
||||||
use Utopia\Storage\Storage;
|
use Utopia\Storage\Storage;
|
||||||
use Appwrite\ClamAV\Network;
|
use Appwrite\ClamAV\Network;
|
||||||
|
@ -75,7 +75,7 @@ App::get('/v1/health/db')
|
||||||
|
|
||||||
$statement->execute();
|
$statement->execute();
|
||||||
} catch (Exception $_e) {
|
} catch (Exception $_e) {
|
||||||
throw new Exception('Database is not available', 500);
|
throw new Exception('Database is not available', 500, Exception::DATABASE_NOT_AVAILABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
$output = [
|
$output = [
|
||||||
|
@ -109,7 +109,7 @@ App::get('/v1/health/cache')
|
||||||
$redis = $utopia->getResource('cache');
|
$redis = $utopia->getResource('cache');
|
||||||
|
|
||||||
if (!$redis->ping(true)) {
|
if (!$redis->ping(true)) {
|
||||||
throw new Exception('Cache is not available', 500);
|
throw new Exception('Cache is not available', 500, Exception::CACHE_NOT_AVAILABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
$output = [
|
$output = [
|
||||||
|
@ -166,7 +166,7 @@ App::get('/v1/health/time')
|
||||||
$diff = ($timestamp - \time());
|
$diff = ($timestamp - \time());
|
||||||
|
|
||||||
if ($diff > $gap || $diff < ($gap * -1)) {
|
if ($diff > $gap || $diff < ($gap * -1)) {
|
||||||
throw new Exception('Server time gaps detected');
|
throw new Exception('Server time gaps detected', 500, Exception::TIME_GAPS_DETECTED);
|
||||||
}
|
}
|
||||||
|
|
||||||
$output = [
|
$output = [
|
||||||
|
@ -294,11 +294,11 @@ App::get('/v1/health/storage/local')
|
||||||
$device = new Local($volume);
|
$device = new Local($volume);
|
||||||
|
|
||||||
if (!\is_readable($device->getRoot())) {
|
if (!\is_readable($device->getRoot())) {
|
||||||
throw new Exception('Device '.$key.' dir is not readable');
|
throw new Exception('Device '.$key.' dir is not readable', 500, Exception::STORAGE_NOT_READABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!\is_writable($device->getRoot())) {
|
if (!\is_writable($device->getRoot())) {
|
||||||
throw new Exception('Device '.$key.' dir is not writable');
|
throw new Exception('Device '.$key.' dir is not writable', 500, Exception::STORAGE_NOT_WRITABLE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -341,7 +341,7 @@ App::get('/v1/health/anti-virus')
|
||||||
$output['version'] = @$antivirus->version();
|
$output['version'] = @$antivirus->version();
|
||||||
$output['status'] = (@$antivirus->ping()) ? 'pass' : 'fail';
|
$output['status'] = (@$antivirus->ping()) ? 'pass' : 'fail';
|
||||||
} catch( \Exception $e) {
|
} catch( \Exception $e) {
|
||||||
throw new Exception('Antivirus is not available', 500);
|
throw new Exception('Antivirus is not available', 500, Exception::ANTIVIRUS_NOT_AVAILABLE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -75,6 +75,7 @@ class Exception extends \Exception
|
||||||
const AVATAR_ICON_NOT_FOUND = 'avatar_icon_not_found';
|
const AVATAR_ICON_NOT_FOUND = 'avatar_icon_not_found';
|
||||||
|
|
||||||
/** Storage */
|
/** Storage */
|
||||||
|
const STORAGE_ERROR = 'storage_error';
|
||||||
const STORAGE_FILE_NOT_FOUND = 'storage_file_not_found';
|
const STORAGE_FILE_NOT_FOUND = 'storage_file_not_found';
|
||||||
const STORAGE_DEVICE_NOT_FOUND = 'storage_device_not_found';
|
const STORAGE_DEVICE_NOT_FOUND = 'storage_device_not_found';
|
||||||
const STORAGE_FILE_DELETION_FAILED = 'storage_file_deletion_failed';
|
const STORAGE_FILE_DELETION_FAILED = 'storage_file_deletion_failed';
|
||||||
|
@ -155,9 +156,15 @@ class Exception extends \Exception
|
||||||
const INVALID_READ_PERMISSIONS = 'invalid_read_permissions';
|
const INVALID_READ_PERMISSIONS = 'invalid_read_permissions';
|
||||||
const INVALID_WRITE_PERMISSIONS = 'invalid_write_permissions';
|
const INVALID_WRITE_PERMISSIONS = 'invalid_write_permissions';
|
||||||
const UNAUTHORIZED_SCOPE = 'unauthorized_scope';
|
const UNAUTHORIZED_SCOPE = 'unauthorized_scope';
|
||||||
const STORAGE_ERROR = 'storage_error';
|
|
||||||
const RATE_LIMIT_EXCEEDED = 'rate_limit_exceeded';
|
const RATE_LIMIT_EXCEEDED = 'rate_limit_exceeded';
|
||||||
const SMTP_DISABLED = 'smtp_disabled';
|
const SMTP_DISABLED = 'smtp_disabled';
|
||||||
|
const DATABASE_NOT_AVAILABLE = 'database_not_available';
|
||||||
|
const CACHE_NOT_AVAILABLE = 'cache_not_available';
|
||||||
|
const TIME_GAPS_DETECTED = 'time_gaps_detected';
|
||||||
|
const STORAGE_NOT_READABLE = 'storage_not_readable';
|
||||||
|
const STORAGE_NOT_WRITABLE = 'storage_not_writable';
|
||||||
|
const ANTIVIRUS_NOT_AVAILABLE = 'antivirus_not_available';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private $errorCode = '';
|
private $errorCode = '';
|
||||||
|
|
Loading…
Reference in a new issue