From 4ae50ab3f224e27ccdf6822440183723ca81303d Mon Sep 17 00:00:00 2001 From: Barry Low Date: Tue, 30 Oct 2018 15:19:16 -0700 Subject: [PATCH] upgrade logger errors --- api/src/logger/errors.js | 19 +++++++++++++++++++ api/src/logger/index.js | 4 +++- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 api/src/logger/errors.js diff --git a/api/src/logger/errors.js b/api/src/logger/errors.js new file mode 100644 index 000000000..b1085fedf --- /dev/null +++ b/api/src/logger/errors.js @@ -0,0 +1,19 @@ +export class AuthentificationError extends Error { + code = 401 + message = 'Autentification not found, you have to be authentificated to perform this action' +} + +export class DatabaseError extends Error { + code = 404 + message = 'Ressource not found : ' + this.message +} + +export class WrongArgumentsError extends Error { + code = 400 + message = 'Wrong arguments : ' + this.message +} + +export class ServiceUnavailableError extends Error { + code = 503 + message = 'At least one service is unresponding ' + this.message +} diff --git a/api/src/logger/index.js b/api/src/logger/index.js index 3ed2a8e70..2a68e3bfc 100644 --- a/api/src/logger/index.js +++ b/api/src/logger/index.js @@ -1,6 +1,8 @@ import { createLogger, format, transports } from 'winston' import { inspect } from 'util' +import { AuthentificationError, DatabaseError, WrongArgumentsError, ServiceUnavailableError } from './errors' + class LoggerService { constructor() { const winstonTransports = [ @@ -28,4 +30,4 @@ class LoggerService { } export const logger = new LoggerService() // Default logger -export { LoggerService } +export { LoggerService, AuthentificationError, DatabaseError, WrongArgumentsError, ServiceUnavailableError }