UNPKG

realm-object-server-enterprise

Version:

Realm Object Server Enterprise

47 lines 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const axon = require("axon"); const realm_object_server_1 = require("realm-object-server"); class LogSender extends realm_object_server_1.Logger { constructor(destinations, level) { super(); this.toConnect = 0; this.sock = new axon.socket('pub'); this.sock.set('hwm', 10); for (const dst of destinations) { this.toConnect++; this.sock.connect('tcp://' + dst); } this.connectPromise = new Promise((resolve, reject) => { this.connectResolve = resolve; }); this.sock.on('connect', () => { console.log('connected to log receiver'); this.toConnect--; if (this.toConnect === 0) { this.connectResolve(); } }); this.sock.on('disconnect', () => { console.log('disconnected from log receiver'); }); this.sock.on('error', (err) => { console.log('error in log sender', err); }); this.sock.on('drop', (msg) => { console.log('dropped a log message', msg); }); } connected() { return this.connectPromise; } log(level, msg, ctx) { this.sock.send(level, msg, ctx); } close() { this.sock.close(); super.close(); } } exports.LogSender = LogSender; //# sourceMappingURL=LogSender.js.map