v1.6.0/lifecycle (api logger)

This commit is contained in:
2020-08-10 22:39:09 -04:00
parent c2effa902e
commit b9c8de2285
3 changed files with 96 additions and 29 deletions
+66
View File
@@ -0,0 +1,66 @@
class Logger {
/**
*
* @param {string} m Module Name
* @param {string} e Endpoint Function Name
*/
constructor(m, e) {
this.__module = m;
this.__endpoint = e;
this.log = this.log.bind(this);
this.start = this.start.bind(this);
this.error = this.error.bind(this);
this.success = this.success.bind(this);
this.__getVString = this.__getVString.bind(this);
}
/**
*
* @param {object} v variables to log
*/
__getVString(v = {}) {
var vString = '';
Object.keys(v).map((k) => (vString += `${k}: ${v[k]} `));
return vString;
}
/**
*
* @param {string} e error message
* @param {object} v variables to log
*/
error(e = 'ERROR LOG', v = {}) {
console.error(`[ERROR] ${this.__module} / ${this.__endpoint} / ${e}\t ${this.__getVString(v)}`);
}
/**
*
* @param {object} v variables to log
*/
start(v = {}) {
console.info(`[START] ${this.__module} / ${this.__endpoint}\t ${this.__getVString(v)}`);
}
/**
*
* @param {string} m log message
* @param {object} v variables to log
*/
success(m = '', v = {}) {
console.info(`[DONE] ${this.__module} / ${this.__endpoint} / ${m}\t ${this.__getVString(v)}`);
}
/**
*
* @param {string} d description like [DONE, ERROR, INFO]
* @param {string} m log message
* @param {object} v variables to log
*/
log(d = 'CUSTOM', m = '', v = {}) {
console.info(
`[(${d})] ${this.__module} / ${this.__endpoint} / ${m} \t ${this.__getVString(v)}`
);
}
}
module.exports = Logger;