joplin/ReactNativeClient/lib/log.js

40 lines
718 B
JavaScript
Raw Normal View History

2017-05-07 21:02:17 +00:00
// Custom wrapper for `console` to allow for custom logging (to file, etc.) if needed.
class Log {
2017-05-14 21:51:45 +00:00
static setLevel(v) {
this.level_ = v;
}
static level() {
2017-06-11 21:11:14 +00:00
return this.level_ === undefined ? Log.LEVEL_DEBUG : this.level_;
2017-05-14 21:51:45 +00:00
}
2017-05-11 20:14:01 +00:00
static debug(...o) {
2017-05-14 21:51:45 +00:00
if (Log.level() > Log.LEVEL_DEBUG) return;
2017-06-11 21:11:14 +00:00
console.info(...o);
2017-05-11 20:14:01 +00:00
}
2017-05-07 21:02:17 +00:00
static info(...o) {
2017-05-14 21:51:45 +00:00
if (Log.level() > Log.LEVEL_INFO) return;
2017-05-07 21:02:17 +00:00
console.info(...o);
}
static warn(...o) {
2017-05-14 21:51:45 +00:00
if (Log.level() > Log.LEVEL_WARN) return;
2017-05-07 21:02:17 +00:00
console.info(...o);
}
static error(...o) {
2017-05-14 21:51:45 +00:00
if (Log.level() > Log.LEVEL_ERROR) return;
2017-05-07 21:02:17 +00:00
console.info(...o);
}
}
2017-05-14 21:51:45 +00:00
Log.LEVEL_DEBUG = 0;
Log.LEVEL_INFO = 10;
Log.LEVEL_WARN = 20;
Log.LEVEL_ERROR = 30;
2017-11-03 00:13:17 +00:00
module.exports = { Log };