how to find action/script timeouts

Posted on
Sat Oct 12, 2019 9:47 am
kw123 offline
User avatar
Posts: 8366
Joined: May 12, 2013
Location: Dallas, TX

how to find action/script timeouts

I now get these messages, but I have no clue where to look)have several hundred actions scripts..). the PIDs shown are temporary = the tasks end after they get cancelled
would it be possible to add a "little" more info to the log file?
Code: Select all
 Error                           because embedded scripts execute sequentially they must complete their execution within 10 seconds.
   Error                           modify the script to exit quickly or convert it to an external file (not embedded).
   Stopping embedded script executor host1 (pid 81357)
   Error                           process (pid 81357) failed to quit after polite request -- forcing it to quit now
   Stopped "embedded script executor host1"
   Embedded script executor host1 started
   Error                           because embedded scripts execute sequentially they must complete their execution within 10 seconds.
   Error                           modify the script to exit quickly or convert it to an external file (not embedded).
   Stopping embedded script executor host1 (pid 81389)
   Error                           process (pid 81389) failed to quit after polite request -- forcing it to quit now
   Stopped "embedded script executor host1"
   Error                           client target com.perceptiveautomation.indigoplugin.scriptexecutor.embedded_nonblocking_bg not found for message ExecuteAction
   Embedded script executor host1 started
Karl

Posted on
Sat Oct 12, 2019 1:24 pm
matt (support) offline
Site Admin
User avatar
Posts: 21417
Joined: Jan 27, 2003
Location: Texas

Re: how to find action/script timeouts

It would be nice, but currently there is no easy way to do this. By the time Indigo Server is killing the script it no longer knows what originated the script. I'll add to the request list to look at adding the plumbing needed for this.

But don't the lines in the Event Log before the timeout give a clue by showing what Trigger, Schedule, Action Group, etc., was recently executed? To track down the specific script you can add an indigo.server.log() lines at the start and end of the scripts in question and see which one is missing the end call.

Image

Posted on
Sat Oct 12, 2019 7:47 pm
kw123 offline
User avatar
Posts: 8366
Joined: May 12, 2013
Location: Dallas, TX

Re: how to find action/script timeouts

its fixed, a plugin went of the rails, that cause all kinds of errors.
What helped was the utilities plugin that can be set to give a warning when a plugin goes over xx % for an extended period of time

I know how to put in a logging statement, but I have switched off logging for all scripts when they run fine, in order not to flood the log. .. might think about adding a variable "scriptDebugLevel" that sets logging level for all scripts:
Code: Select all
if indigo.variables["scriptDebugLevel"].value == "1": indigo.server.log(" debug text here ")
AND YES some tracing would be nice .. but I know lower prio.
Could you not add the parent PID of the script that is cancelled? That should be still present when you kill that script - or is that the indigo server?

Karl

Posted on
Sat Oct 12, 2019 7:56 pm
matt (support) offline
Site Admin
User avatar
Posts: 21417
Joined: Jan 27, 2003
Location: Texas

Re: how to find action/script timeouts

The process (and thus the PID) is re-used by all embedded python scripts, unless Indigo Server has to kill it because of the timeout (then a new was is created). So the PID isn't very useful in this case.

Image

Page 1 of 1

Who is online

Users browsing this forum: No registered users and 8 guests