Я запускаю сервер nodeJS на Ubuntu 14.04 в Google Compute Engine. Я хочу использовать облачное ведение журнала Google для своего приложения, поэтому я установил агент ведения журнала google fluentd в соответствии с https://cloud.google.com/logging/docs/agent/installation
Я использовал winston и winston-syslog для записи логов. Вот код.
var winston = require('winston');
var winstonsyslog = require('winston-syslog').Syslog;
var options = {
json : true
};
winston.add(winston.transports.Syslog, options);
Когда я пишу журнал, используя
winston.log('info', "27", { anything: 'This is metadata' });
я получаю
{
metadata: {…}
textPayload: "May 14 10:47:44 localhost node[7633]: {"anything":"This is metadata","level":"info","message":"27"}"
insertId: "..."
log: "syslog.local0.info"
}
Как получить structPayload вместо textPayload, которая отображает журнал как JSON вместо String.
.log.json
и что у вас должен быть встроенный действительный объект JSON в каждой строке ... хотя даже с этим мне не удалось прочитать его через облачный журнал Googles ... К вашему сведению: Ваш журнал, как и в testPayload, не является объектом JSON - person farridav   schedule 18.05.2016