Kargi-Sitesi/node_modules/logform/logstash.js

29 lines
759 B
JavaScript

'use strict';
const format = require('./format');
const { MESSAGE } = require('triple-beam');
const jsonStringify = require('safe-stable-stringify');
/*
* function logstash (info)
* Returns a new instance of the LogStash Format that turns a
* log `info` object into pure JSON with the appropriate logstash
* options. This was previously exposed as { logstash: true }
* to transports in `winston < 3.0.0`.
*/
module.exports = format(info => {
const logstash = {};
if (info.message) {
logstash['@message'] = info.message;
delete info.message;
}
if (info.timestamp) {
logstash['@timestamp'] = info.timestamp;
delete info.timestamp;
}
logstash['@fields'] = info;
info[MESSAGE] = jsonStringify(logstash);
return info;
});