blob: 4d024e41cc8f8c3924c8f30e387f85538750fbc5 [file] [log] [blame]
#!/usr/bin/env node
var amqp = require('amqplib/callback_api');
function bail(err, conn) {
console.error(err);
if (conn) conn.close(function() { process.exit(1); });
}
function on_connect(err, conn) {
if (err !== null) return bail(err);
process.once('SIGINT', function() { conn.close(); });
var ex = 'logs';
function on_channel_open(err, ch) {
if (err !== null) return bail(err, conn);
ch.assertQueue('', {exclusive: true}, function(err, ok) {
var q = ok.queue;
ch.bindQueue(q, ex, '');
ch.consume(q, logMessage, {noAck: true}, function(err, ok) {
if (err !== null) return bail(err, conn);
console.log(" [*] Waiting for logs. To exit press CTRL+C.");
});
});
}
function logMessage(msg) {
if (msg)
console.log(" [x] '%s'", msg.content.toString());
}
conn.createChannel(on_channel_open);
}
amqp.connect(on_connect);