asksuite-core
Version:
58 lines (45 loc) • 1.07 kB
JavaScript
const AWSCloudWatchCaller = require('./AWSCloudWatchCaller');
class ConsoleRemote {
constructor(configAWS, logGroupName, disabled) {
this.disabled = disabled;
this.awsCloudWatchCaller = new AWSCloudWatchCaller(configAWS, logGroupName);
}
isDisabled() {
return this.disabled;
}
startScheduler() {
if (this.disabled) {
return;
}
this.awsCloudWatchCaller.startScheduler();
}
log(key, name, message) {
this.addToQueue(key, 'log', name, message);
}
error(key, name, message) {
this.addToQueue(key, 'error', name, message);
}
addToQueue(key, type, name, message) {
key = Array.isArray(key) ? key.join('-') : key;
if (message === undefined) {
message = name;
name = undefined;
}
console[type].apply(
this,
[name, message].filter(v => v),
);
if (this.disabled) {
return;
}
this.awsCloudWatchCaller.addToQueue(
key,
JSON.stringify({
type,
name,
message,
}),
);
}
}
module.exports = ConsoleRemote;