reiso
Version:
45 lines • 5.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const Config_1 = require("../../Modules/Config");
const Logstash_1 = require("./Logstash");
const String_1 = require("./String");
const sender = require('os').hostname();
class LogstashLogger {
constructor() {
this.logger = new Logstash_1.Logstash(Config_1.getConfig().logLogstash);
this.startTimer();
}
startTimer() {
this.timer = setInterval(() => this.logger.logstashSend(), Config_1.getConfig().logLogstash && Config_1.getConfig().logLogstash.interval || 300);
}
getTags(line) {
let tags = [];
if (Config_1.getConfig().logLogstash.tags && Array.isArray(Config_1.getConfig().logLogstash.tags)) {
tags = Config_1.getConfig().logLogstash.tags.concat(tags);
}
else if (Config_1.getConfig().logLogstash.tags) {
tags = Config_1.getConfig().logLogstash.tags.split(',');
}
tags = Config_1.getConfig().logLogstash.tags ? Config_1.getConfig().logLogstash.tags.concat(tags) : tags;
tags = (line.tags && Array.isArray(line.tags)) ? line.tags.concat(tags) : tags;
tags = String_1.distinct(tags);
return tags;
}
getMeta(line) {
return Object.assign({ 'beat': Config_1.getConfig().logLogstash.beat || 'reiso', 'type': Config_1.getConfig().logLogstash.type || 'reiso' }, (typeof line['@metadata'] == 'object' ? line['@metadata'] : {}));
}
getFields(line) {
return Object.assign({ 'sender': Config_1.getConfig().logLogstash.sender || sender }, (typeof line['@fields'] == 'object' ? line['@fields'] : {}));
}
getLevel() {
return Config_1.getConfig().logLogstash && Config_1.getConfig().logLogstash.level;
}
async log(level, line) {
const fields = this.getFields(line);
const metadata = this.getMeta(line);
const tags = this.getTags(line);
await this.logger.log(tags, fields, metadata, level, line);
}
}
exports.LogstashLogger = LogstashLogger;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9nc3Rhc2hMb2dnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvU2VydmVyL0xpYi9Mb2dzdGFzaExvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLGlEQUFpRDtBQUNqRCx5Q0FBc0M7QUFFdEMscUNBQW9DO0FBRXBDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUV4QztJQUlJO1FBQ0ksSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLG1CQUFRLENBQUMsa0JBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU8sVUFBVTtRQUNkLElBQUksQ0FBQyxLQUFLLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLEVBQUUsa0JBQVMsRUFBRSxDQUFDLFdBQVcsSUFBSSxrQkFBUyxFQUFFLENBQUMsV0FBVyxDQUFDLFFBQVEsSUFBSSxHQUFHLENBQUMsQ0FBQztJQUNuSSxDQUFDO0lBRU8sT0FBTyxDQUFDLElBQWE7UUFDekIsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2QsSUFBSSxrQkFBUyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLGtCQUFTLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDN0UsSUFBSSxHQUFHLGtCQUFTLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNwRDthQUFNLElBQUksa0JBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUU7WUFDckMsSUFBSSxHQUFHLGtCQUFTLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNsRDtRQUNELElBQUksR0FBRyxrQkFBUyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsa0JBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDdkYsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQy9FLElBQUksR0FBRyxpQkFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxPQUFPLENBQUMsSUFBYTtRQUN6Qix1QkFDSSxNQUFNLEVBQUUsa0JBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksT0FBTyxFQUMvQyxNQUFNLEVBQUUsa0JBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksT0FBTyxJQUM1QyxDQUFDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDOUU7SUFDTCxDQUFDO0lBRU8sU0FBUyxDQUFDLElBQWE7UUFDM0IsdUJBQ0ksUUFBUSxFQUFFLGtCQUFTLEVBQUUsQ0FBQyxXQUFXLENBQUMsTUFBTSxJQUFJLE1BQU0sSUFDL0MsQ0FBQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxTQUFTLENBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzFFO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDSixPQUFPLGtCQUFTLEVBQUUsQ0FBQyxXQUFXLElBQUksa0JBQVMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDcEUsQ0FBQztJQUVELEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBYSxFQUFFLElBQWE7UUFDbEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNKO0FBbkRELHdDQW1EQyJ9