Jump to content

Wishlist Item: The Ability to send Node Server Restart from Programs.


TRI0N

Recommended Posts

Posted

Todays the Kasa Node Server and eisy lost connection. The fix was a simple restart of the Kasa Node Server. The idea:

The ability to run a program that will monitor the Kasa Server inside eisy. Yes the status was Disconnected during the connection issue. So a simple script would be AWESOME!

'Kasa Controller' NodeServer Online is Disconnected

Wait 60 seconds
      Polyglot Node Server 3 Restart.

That would be very beneficial for node servers I would think.


TRI0N

  • Like 4
Posted

In addition some node servers produce a heartbeat, which is often better to detect failure.   I don't have a heartbeat program set up for Kasa but since it's a @Jimbo.Automates node server I'd bet that it sends a heartbeat.  Here's an example heartbeat program for the notification node server.   (In this case, the NR doesn't use the notification node server to send the notification.)

hb.controller - [ID 0028][Parent 016D]

If
        'Node Servers / Notification Controller' is switched On
     Or 'Node Servers / Notification Controller' is switched Off
 
Then
        Wait  11 minutes
        Repeat Every  30 minutes
           Resource 'ISYnotification.NotificationNS.Missed Heartbeat'
 
Else
   - No Actions - (To add one, press 'Action')
 

 

  • Like 1
Posted

If a node server stops working you should 'Download Log Package' and send that in a PM to the developer to debug otherwise the issues will never get fixed.

Version 3.2.20 of the Kasa nodeserver fixed a bug that was causing a crash:
https://github.com/UniversalDevicesInc-PG3/udi-poly-kasa/blob/master/README.md#release-notes
 

For each nodeserver there is a sub-forum you should monitor and post there if you see issues:
https://forum.universal-devices.com/forum/313-kasa-tp-link/
 

Posted (edited)
2 hours ago, Jimbo.Automates said:

If a node server stops working you should 'Download Log Package' and send that in a PM to the developer to debug otherwise the issues will never get fixed.

Version 3.2.20 of the Kasa nodeserver fixed a bug that was causing a crash:
https://github.com/UniversalDevicesInc-PG3/udi-poly-kasa/blob/master/README.md#release-notes
 

For each nodeserver there is a sub-forum you should monitor and post there if you see issues:
https://forum.universal-devices.com/forum/313-kasa-tp-link/
 

This would be more of a fail-safe it happens and the ability to restart the node server. Right now already have NOAA crap out every time the eisy reboots. The Kasa server I have no idea why is disconnected. But this isn't the first time and I'm most confident it won't be the last. 


TRI0N

Edited by TRI0N
Posted
Just now, TRI0N said:

This would be more of a fail-safe it happens and the ability to restart the node server. Right now already have NOAA crap out every time the eisy reboots. The Kasa server I have no idea why is disconnected. But this isn't the first time and I'm must confident it won't be the last. 

As I said, there can be no confidence it will be the last if you don't send me a Log Package.  I've only heard one issue for Kasa causing a crash in the last 5 months and it was fixed within a week because I was given a Log Package.   

  • Like 1
Posted
40 minutes ago, Jimbo.Automates said:

As I said, there can be no confidence it will be the last if you don't send me a Log Package.  I've only heard one issue for Kasa causing a crash in the last 5 months and it was fixed within a week because I was given a Log Package.   

Hate you tell you this but everyone doesn't have all the time in the world to stop what they are doing and send logs to the developer. I'm one of them...

TRI0N

Posted
7 minutes ago, TRI0N said:

Hate you tell you this but everyone doesn't have all the time in the world to stop what they are doing and send logs to the developer. I'm one of them...

That's unfortunate.  I'd rather get the node server fixed, so that i didn't need to worry about needing to restarting it at an odd time.  My node servers are running months at a time.  I have noticed Kasa quits lately but I'm using the unsupported Polyglot V2 node server.  I'll be moving to eisy and Polyglot v3 sometime in the next few months, if Kasa still dies then I will spend the necessary 5 minutes to drop @Jimbo.Automates and log and note.

  • Like 1
Posted
7 minutes ago, MrBill said:

That's unfortunate.  I'd rather get the node server fixed, so that i didn't need to worry about needing to restarting it at an odd time.  My node servers are running months at a time.  I have noticed Kasa quits lately but I'm using the unsupported Polyglot V2 node server.  I'll be moving to eisy and Polyglot v3 sometime in the next few months, if Kasa still dies then I will spend the necessary 5 minutes to drop @Jimbo.Automates and log and note.

I have posted on Node Servers with such, letting people know there is a problem. But to dedicate my time on being a beta tester is limited. That's how I see it. Even when I submit tickets to UD (I have maybe 4 tickets ever) where they requested logs and I was in the middle of installing a 3 Phase dry pot transformer at a on-site location. So yes my time is limited. But the time I got around to looking at the logs 5.5.9 was released and the issue was resolved. 

TRI0N

Posted
1 minute ago, Jimbo.Automates said:

Takes less time to download log package and send it then it did to create all these posts.

Sent from my Pixel 6 Pro using Tapatalk
 

What log would you like to see now that I'm here? Now that I'm at a computer and not messing with 720 volts of electricity. 

TRI0N

Posted

I understand the desire to have a method to recover with things go bad in node servers.  I made some proposals for this before PG3 was developed, but other things took priority.

Because of the way things are designed, the only practical way to do this is to have node server status built into the IoX firmware so that that IoX can detect when a node server needs to be restarted and code added to IoX to send commands to PG3 to restart node servers.

We've tried to work-around this on the node server/PG3 side by allowing node servers to have a "status" value to indicate it's health, but that is really only able to detect if PG3 loses connection to the node server, not really if the node server is operating correctly.  But this is only half the solution.  We still have no way for IoX to signal PG3 that a node server should be restarted, there's just no way to do that with the current IoX or PG3.

Posted
16 minutes ago, TRI0N said:

What log would you like to see now that I'm here? Now that I'm at a computer and not messing with 720 volts of electricity. 

As I mentioned Go to the node server page -> Log -> Download Log Package

But, if you were not on 3.2.20 of the Kasa node server, then there was a know issue that was fixed last week.

Posted (edited)
3 hours ago, Jimbo.Automates said:

As I said, there can be no confidence it will be the last if you don't send me a Log Package.  I've only heard one issue for Kasa causing a crash in the last 5 months and it was fixed within a week because I was given a Log Package.   

With the greatest respect (and I mean that....), I think that @TRI0N is right that it would be useful to have a program that restarts a nodeserver when it stops working. That does not reflect (badly) on any nodeserver but nodeservers occasionally stop working and then require a restart. Having (the option to create) a program in the Administrative Console that does the restart would be very useful. 

Edited by asbril
  • Like 1
Posted
I understand the desire to have a method to recover with things go bad in node servers.  I made some proposals for this before PG3 was developed, but other things took priority.
Because of the way things are designed, the only practical way to do this is to have node server status built into the IoX firmware so that that IoX can detect when a node server needs to be restarted and code added to IoX to send commands to PG3 to restart node servers.
We've tried to work-around this on the node server/PG3 side by allowing node servers to have a "status" value to indicate it's health, but that is really only able to detect if PG3 loses connection to the node server, not really if the node server is operating correctly.  But this is only half the solution.  We still have no way for IoX to signal PG3 that a node server should be restarted, there's just no way to do that with the current IoX or PG3.

I don’t think you have to have IoX in charge of deciding when a node server needs to restart. And by that, I mean hard coding the logic into IoX if that is what you are suggesting. Letting the user issue a restart command based on his own criteria/program is preferable (for me). Just because you can’t catch every failure for a node server doesn’t mean monitoring some aspects isn’t worthwhile. Using connection status and heart beats is a good start. On some node servers I am able to monitor the status of certain nodes and tell when it has stopped working also.

Given there is a restart command that can be issued manually, I would think this is relatively simple to implement remotely from a development standpoint?

I get this gives people plenty of rope to hurt themselves and in turn probably increases support tickets.

Lastly, does restarting the node server remove the relevant logs needed for debug? If not, I don’t see why this has to be either/or. Restart automatically and then send logs to developer later.
  • Like 3
Posted
1 hour ago, gzahar said:


I don’t think you have to have IoX in charge of deciding when a node server needs to restart. And by that, I mean hard coding the logic into IoX if that is what you are suggesting. Letting the user issue a restart command based on his own criteria/program is preferable (for me). 

This is the problem. IoX doesn't have any way to issue a command to PG3.  There's no API in IoX that lets it send commands to PG3.  You can send commands to node servers, but that won't work because you're trying to restart the node server, it probably isn't alive to get the command.

There's also security issues to think about.  You can issue a restart manually because you're logged in and authorized to do that. 

  • Like 1
Posted (edited)
1 hour ago, bpwwer said:

There's also security issues to think about.  You can issue a restart manually because you're logged in and authorized to do that. 

Not sure how that would be a problem since PG3 and eisy already have authentication between one another. We can check the status if a node server is Disconnect/Connected in programing. Adding something to allow eisy to send a restart to a node server really shouldn't be that hard. No idea why you would even need a API for it either...


TRI0N

Edited by TRI0N
Posted
1 hour ago, bpwwer said:

This is the problem. IoX doesn't have any way to issue a command to PG3.  There's no API in IoX that lets it send commands to PG3.  You can send commands to node servers, but that won't work because you're trying to restart the node server, it probably isn't alive to get the command.

There's also security issues to think about.  You can issue a restart manually because you're logged in and authorized to do that. 

Can you add an API to PG3(x) that allows triggering from a network resource?  You can even include credentials in a NR.

Posted

@Jimbo.Automates My St-Sonos NS fails about once per week.  I've posted log packages on this forum and have DM'd the developer, who, in the past, has been incredibly responsive.  However, there's been no word from him for a couple of months.  Not complaining, just stating the facts.  Therefore, I restart the NS and move on - not that big of a deal for me.

However, when my wife wants to play the music and the NS is down, that's when the complaining starts...

Ross

 

Posted
2 hours ago, Ross said:

@Jimbo.Automates My St-Sonos NS fails about once per week.  I've posted log packages on this forum and have DM'd the developer, who, in the past, has been incredibly responsive.  However, there's been no word from him for a couple of months.  Not complaining, just stating the facts.  Therefore, I restart the NS and move on - not that big of a deal for me.

However, when my wife wants to play the music and the NS is down, that's when the complaining starts...

I never said we shouldn't be able to restart a NS from the ISY.  I leave that up to @bpwwer since he is the developer of that code, and I respect his thoughts.  I merely pointed out the first thing to do is send a report to the author.  Nothing we can do if the author is not responding, most of us have real jobs and do this on the side and occasionally go off line for extended periods as well.   

Posted
28 minutes ago, Jimbo.Automates said:

I never said we shouldn't be able to restart a NS from the ISY.  I leave that up to @bpwwer since he is the developer of that code, and I respect his thoughts.  I merely pointed out the first thing to do is send a report to the author.  Nothing we can do if the author is not responding, most of us have real jobs and do this on the side and occasionally go off line for extended periods as well.   

Unfortunately, I am not the developer of that code.  I can only make changes to the PG3(x) code base, not the IoX firmware or other UDI components on the Polisy/eisy.  

The IoX firmware needs changes for it to be able to send commands to PG3(x).  If that was done, I'd be more than willing to update PG3(x) to accept those command for node server control.  And I agree, we should be able to control node servers from IoX, but not my call.

  • Like 1
Posted
3 hours ago, Ross said:

@Jimbo.Automates My St-Sonos NS fails about once per week.  I've posted log packages on this forum and have DM'd the developer, who, in the past, has been incredibly responsive.  However, there's been no word from him for a couple of months.  Not complaining, just stating the facts.  Therefore, I restart the NS and move on - not that big of a deal for me.

However, when my wife wants to play the music and the NS is down, that's when the complaining starts...

Ross

 

@Ross The original developer of the ST-Sonos node server has stopped supporting it.  He provided me access to the code so I am trying to support it, but I don't have any Sonos devices.  If you send me a log package next time it crashes, I'll take a look. 

  • Like 1
Posted
17 hours ago, gzahar said:

Can you add an API to PG3(x) that allows triggering from a network resource?  You can even include credentials in a NR.

Good idea @gzahar This is probably doable.  I've had the same thought myself.  I'd have to look into the security aspects of doing this and I'd rather the IoX had this built in. 

  • Like 1
Posted (edited)
2 hours ago, Jimbo.Automates said:

I never said we shouldn't be able to restart a NS from the ISY.  I leave that up to @bpwwer since he is the developer of that code, and I respect his thoughts.  I merely pointed out the first thing to do is send a report to the author.  Nothing we can do if the author is not responding, most of us have real jobs and do this on the side and occasionally go off line for extended periods as well.   

  •  I am grateful to all developers of nodeservers.  Most likely they have day jobs and other more important things to do. That is why I have been arguing that nodeservers should have an annual fee, so that developers are motivated to update their ns.
  •  I am sure that nodeservers may stop working for a variety of reasons, not necessarily because of the nodeserver itself, though sending the log to the developer makes good sense.
  • I understand that we will soon have the option to remotely access PG3 and that may address part of the concern.
  • Nevertheless, being able to create a program that restarts a nodeserver,  when it stopped communicating with Polisy/eisy, would be very helpful.
Edited by asbril
Guest
This topic is now closed to further replies.

×
×
  • Create New...