mirror of
				https://github.com/node-red/node-red-nodes.git
				synced 2025-03-01 10:37:43 +00:00 
			
		
		
		
	Improved error states and logging
This commit is contained in:
		
				
					committed by
					
						
						GitHub
					
				
			
			
				
	
			
			
			
						parent
						
							79b93f30ec
						
					
				
				
					commit
					5ef67de581
				
			@@ -54,15 +54,15 @@ module.exports = function(RED) {
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    function setStatusError(node, allNodes) {
 | 
			
		||||
    function setStatusError(node, allNodes, message = undefined) {
 | 
			
		||||
        if(allNodes) {
 | 
			
		||||
            for (var id in node.users) {
 | 
			
		||||
                if (hasProperty(node.users, id)) {
 | 
			
		||||
                    node.users[id].status({ fill: "red", shape: "dot", text: "error" });
 | 
			
		||||
                    node.users[id].status({ fill: "red", shape: "dot", text: message ?? "error" });
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
        } else {
 | 
			
		||||
            node.status({ fill: "red", shape: "dot", text: "error" });
 | 
			
		||||
            node.status({ fill: "red", shape: "dot", text: message ?? "error" });
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -219,22 +219,25 @@ module.exports = function(RED) {
 | 
			
		||||
                    });
 | 
			
		||||
 | 
			
		||||
                    node.client.on("reconnecting", function() {
 | 
			
		||||
                        node.warn("reconnecting");
 | 
			
		||||
                        node.warn("Reconnecting to STOMP server");
 | 
			
		||||
                        node.connecting = true;
 | 
			
		||||
                        node.connected = false;
 | 
			
		||||
 | 
			
		||||
                        node.log("Reconnecting to STOMP server...", {url: `${node.options.address}:${node.options.port}`, protocolVersion: node.options.protocolVersion});
 | 
			
		||||
                        node.log(`Reconnecting to STOMP server, url: ${node.options.address}:${node.options.port}, protocolVersion: ${node.options.protocolVersion}`);
 | 
			
		||||
                        setStatusConnecting(node, true);
 | 
			
		||||
                    });
 | 
			
		||||
 | 
			
		||||
                    node.client.on("error", function(err) {
 | 
			
		||||
                        node.error(err);
 | 
			
		||||
                        setStatusError(node, true);
 | 
			
		||||
                        if (err.reconnectionFailed) {
 | 
			
		||||
                            setStatusError(node, true);
 | 
			
		||||
                        }
 | 
			
		||||
                    });
 | 
			
		||||
 | 
			
		||||
                    node.client.connect();
 | 
			
		||||
                } catch (err) {
 | 
			
		||||
                    node.error(err);
 | 
			
		||||
                    setStatusError(node, true, "Reconnection failed: exceeded number of reconnection attempts");
 | 
			
		||||
                }
 | 
			
		||||
            } else {
 | 
			
		||||
                node.log("Not connecting to STOMP server, already connected");
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user