1
0
mirror of https://github.com/node-red/node-red.git synced 2023-10-10 13:36:53 +02:00

Add uid to mqtt client log messages

This is a semi-temporary change to help debug the multiple-connection issue seen with the MQTT client
This commit is contained in:
Nick O'Leary 2014-02-19 22:17:20 +00:00
parent b4ef1d354d
commit d97e23947d

View File

@ -29,6 +29,7 @@ module.exports = {
var id = "["+(username||"")+":"+(password||"")+"]["+(clientid||"")+"]@"+broker+":"+port; var id = "["+(username||"")+":"+(password||"")+"]["+(clientid||"")+"]@"+broker+":"+port;
if (!connections[id]) { if (!connections[id]) {
connections[id] = function() { connections[id] = function() {
var uid = (1+Math.random()*4294967295).toString(16);
var client = mqtt.createClient(port,broker); var client = mqtt.createClient(port,broker);
client.setMaxListeners(0); client.setMaxListeners(0);
var options = {keepalive:15}; var options = {keepalive:15};
@ -85,7 +86,7 @@ module.exports = {
}; };
client.on('connect',function() { client.on('connect',function() {
if (client) { if (client) {
util.log('[mqtt] connected to broker tcp://'+broker+':'+port); util.log('[mqtt] ['+uid+'] connected to broker tcp://'+broker+':'+port);
connecting = false; connecting = false;
for (var s in subscriptions) { for (var s in subscriptions) {
@ -103,7 +104,7 @@ module.exports = {
} }
}); });
client.on('connectionlost', function(err) { client.on('connectionlost', function(err) {
util.log('[mqtt] connection lost to broker tcp://'+broker+':'+port); util.log('[mqtt] ['+uid+'] connection lost to broker tcp://'+broker+':'+port);
setTimeout(function() { setTimeout(function() {
if (client) { if (client) {
client.connect(options); client.connect(options);
@ -111,7 +112,7 @@ module.exports = {
}, settings.mqttReconnectTime||5000); }, settings.mqttReconnectTime||5000);
}); });
client.on('disconnect', function() { client.on('disconnect', function() {
util.log('[mqtt] disconnected from broker tcp://'+broker+':'+port); util.log('[mqtt] ['+uid+'] disconnected from broker tcp://'+broker+':'+port);
}); });
return obj return obj