Можно ли отделить сообщение, идущее в кибану, от winston -asticSearch? - PullRequest
0 голосов
/ 10 апреля 2019

Попытка получить журналы приложений, отправленные в Kibana напрямую из библиотеки winston -asticSearch. Проблема в том, что сообщение отправляется вместе с кибаной и не разделяет данные на отдельные поля.

До сих пор пробовал несколько разных форматов, но, похоже, ничего не работает, и документации по функциональности преобразования мало.

const { createLogger } = require('winston');
const Elasticsearch = require('winston-elasticsearch');
const elasticsearch = require('elasticsearch');

const clientData = new elasticsearch.Client({
    index: 'xxxxx.winston.logs',
    host: 'elasticsearch.xxxxxx.com',
    log: 'trace'
});

const login = createLogger({
    transports: [
        new Elasticsearch({
            level: 'info',
            client: clientData,
            index: 'xxxxx.winston.logs'
        })
    ]
});

module.exports = {
    login
};

const logs = require('./winston-logger');

module.exports = {
    accessLog({ body, user, statusCode, requestId }) {
        logs.login.info(`{"id":"${body.username}","email":"${user._json.mail}","response":"${statusCode}","uuid":"${requestId}"}`);
    }

};

сообщение: {"id": "xxxx", "email": "xxxxxx", "response": "200", "uuid": "0e5a1506-46aa-4044-9311-9a6cab1335ac"}

так выглядит в Кибане, но пытается получить идентификатор, электронную почту, ответ и т. Д. В свои поля.

...