UNPKG

logify

Version:
43 lines (31 loc) 1.18 kB
'use strict'; var _Promise = require('babel-runtime/core-js/promise')['default']; var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; Object.defineProperty(exports, '__esModule', { value: true }); exports['default'] = create; var _dgram = require('dgram'); var _dgram2 = _interopRequireDefault(_dgram); var _formatterJsonLine = require('../formatter/json-line'); var _formatterJsonLine2 = _interopRequireDefault(_formatterJsonLine); function create() { var opts = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0]; opts.type = opts.type || 'udp4'; opts.host = opts.host || 'localhost'; opts.port = opts.port || 8192; opts.layout = opts.layout || _formatterJsonLine2['default']; var socket = _dgram2['default'].createSocket(opts.type); return function log(entry) { var message = opts.layout(entry); return new _Promise(function (resolve, reject) { socket.send(message, 0, message.length, opts.port, opts.host, function (err) { if (err) { return reject(err); } resolve(); }); }); }; } module.exports = exports['default'];