1.0.2 • Published 9 years ago
sbis3-elastic-logger v1.0.2
npm module "sbis3-elastic-logger"
Имеет 2 public метода в качестве своего API:
• init(addresser, config)
инициализирует "sbis3-elastic-logger"
объект "addresser" - (отправитель) адрес сервера, который шлет данный в Elastic. Имеет следующие поля:
► host
► port
объект "config" - (получатель) адреса серверов Elastic. Имеет следующие поля:
► host (можно указать несколько хостов через запятую)
► port
• log(record)
делает запись в журнал Elastic
Пример:
// подключаем модуль
var elasticLogger = require('sbis3-elastic-logger');
// собираем данные о нашем сервере
var addresser = {
host: host,
port: port
};
// инициализируем модуль
elasticLogger.init(addresser, configs.elasticLogger);
elasticLogger.on('error', function(e) {
// серьезная ошибка в работе модуля
});
elasticLogger.on('formatException', function(e) {
// неправильный формат объекта "record"
// e.invalidField - имя невалидного поля
});
// создаем объект в формате Elastic
var record = {
timestamp: Date.now() / 1000,
_uuid: headers['X-Uniq-ID'],
short_message: 'BL call',
level: 6,
_depth: headers['X-Depth'],
_method: 'ПроверкаПрав.AccessAreasList'
};
// делаем запись
elasticLogger.log(record);
Объект "record" - это специальный объект, содержащий поля Elastic, оговоренные документацией.
Следующие поля будут добавлены автоматически модулем при разборе и проверке "record":
• host будет взят из объекта "addresser", полученного при инициализации "sbis3-elastic-logger"
• _memory
• _src_pid