ID |
Date |
Icon |
Author |
Author Email |
Category |
OS |
ELOG Version |
Subject |
69067
|
Mon Nov 25 16:32:07 2019 |
| Stefan Ritt | stefan.ritt@psi.ch | Request | Windows | 3.1.3-fd7f1e2 | Re: Executing a shell command using elogd Windows service | Wow, having these color signal lamps really looke like a cute solution, made me laugh.
No, there is no other way than the Execute new thing. I have given up long time ago to use Windows services, because they are very hard to debug and very limited. So at our site everything runs under Linux.
Have you tried to specify the explicit path of your log file? Like Execute new = echo $Status > C:\Path\Last_status.log
Best,
Stefan
Frank Baptista wrote: |
Sorry -- I somehow selected the wrong OS in my original message. Asleep at the wheel again.
Frank Baptista wrote: |
Greetings!
We've been successfully running nearly a dozen separate logbooks on independent laptops -- all of them are running elogd as a Windows service. This works well, since I've also set up auto recovery options in the event that the service inadvertently stops.
Now, I have a need to place the value of an attribute of the latest log entry into a basic text file. Of course, this works just fine if I have launched elogd -x as a normal executable, using Execute new = echo $Status > Last_status.log in my CFG file. However, I would like to be able to do this using the Windows service which is running in the background.
Is there another way to write the value of an attribute into a separate file? If not, do I have to have a special build of ELOG in order to be able to enable the Windows service to execute shell commands? For the record, these logbooks are running on secure laptops that are isolated onto their own network, and the user is unable to edit the CFG file.
In case you're wondering about the reason for the separate text file -- I've written a separate program which illuminates one of 4 different color signal lamps (mounted on a test station), based on the latest "Status" of the test station. (Running, Idle, Broken, Other).
I appreciate any guidance here -- this is a "big deal" here, as one glance over the floor gives us an idea of what's running (or not).
Thanks!
Frank
|
|
|
69069
|
Sat Nov 30 15:46:16 2019 |
| Frank Baptista | caffeinejazz@gmail.com | Request | Windows | 3.1.3-fd7f1e2 | Re: Executing a shell command using elogd Windows service | Well, there I was, eating Thanksgiving dinner, when suddenly, it hit me (no, not indigestion). I can write a simple program that parses out the latest "Status" from the most recent logbook file -- a relatively easy task, since it's a text file. This solution avoids having to execute a shell command at all. GOOOOOOAAAAAAL!!! 
As always, I appreciate all your help...can't thank you enough!
All the best,
Frank
Stefan Ritt wrote: |
Wow, having these color signal lamps really looke like a cute solution, made me laugh.
No, there is no other way than the Execute new thing. I have given up long time ago to use Windows services, because they are very hard to debug and very limited. So at our site everything runs under Linux.
Have you tried to specify the explicit path of your log file? Like Execute new = echo $Status > C:\Path\Last_status.log
Best,
Stefan
Frank Baptista wrote: |
Sorry -- I somehow selected the wrong OS in my original message. Asleep at the wheel again.
Frank Baptista wrote: |
Greetings!
We've been successfully running nearly a dozen separate logbooks on independent laptops -- all of them are running elogd as a Windows service. This works well, since I've also set up auto recovery options in the event that the service inadvertently stops.
Now, I have a need to place the value of an attribute of the latest log entry into a basic text file. Of course, this works just fine if I have launched elogd -x as a normal executable, using Execute new = echo $Status > Last_status.log in my CFG file. However, I would like to be able to do this using the Windows service which is running in the background.
Is there another way to write the value of an attribute into a separate file? If not, do I have to have a special build of ELOG in order to be able to enable the Windows service to execute shell commands? For the record, these logbooks are running on secure laptops that are isolated onto their own network, and the user is unable to edit the CFG file.
In case you're wondering about the reason for the separate text file -- I've written a separate program which illuminates one of 4 different color signal lamps (mounted on a test station), based on the latest "Status" of the test station. (Running, Idle, Broken, Other).
I appreciate any guidance here -- this is a "big deal" here, as one glance over the floor gives us an idea of what's running (or not).
Thanks!
Frank
|
|
|
|
68272
|
Sun Feb 28 18:24:58 2016 |
| Andreas Luedeke | andreas.luedeke@psi.ch | Bug report | Linux | 3.1.1 | Re: Execute new|edit doesn't seem to work |
Juergen Diefenbach wrote: | I am trying to use the "Execute new|edit|delete" feature to track changes to an elog using git.
[...]
However, I experienced unreproducible behavior when creating "new" entries. Sometimes the command specified by "Execute new=" is called, sometimes the one specified by "Execute edit=" is executed. Most of the time it doesn't work as expected. 
[...]
Do you have an idea how to fix this or can you point me in some direction to further track it down? Thank you! |
I'm just guessing, but you could try to disable the "save drafts" feature and see if the behaviour changes:
Save drafts = 0
If that is the case then Stefan will know where to look 
Cheers
Andreas |
68276
|
Mon Mar 7 13:03:13 2016 |
| Juergen Diefenbach | diefenba@uni-mainz.de | Bug report | Linux | 3.1.1 | Re: Execute new|edit doesn't seem to work |
Andreas Luedeke wrote: | I'm just guessing, but you could try to disable the "save drafts" feature and see if the behaviour changes:
Save drafts = 0
If that is the case then Stefan will know where to look 
Cheers
Andreas |
Alright, I tried "Save drafts = 0" in the config file and now it seems to work all the time as expected!
Thank you, Andreas!
In principle I could live with this as I don't think I need to have drafts enabled.
Cheers,
Jürgen |
68277
|
Tue Mar 8 14:12:26 2016 |
| Andreas Luedeke | andreas.luedeke@psi.ch | Bug report | Linux | 3.1.1 | Re: Execute new|edit doesn't seem to work |
Juergen Diefenbach wrote: |
Andreas Luedeke wrote: | I'm just guessing, but you could try to disable the "save drafts" feature and see if the behaviour changes:
Save drafts = 0
If that is the case then Stefan will know where to look 
Cheers
Andreas |
Alright, I tried "Save drafts = 0" in the config file and now it seems to work all the time as expected!
Thank you, Andreas!
In principle I could live with this as I don't think I need to have drafts enabled.
Cheers,
Jürgen |
I would speculate that "Execute new" is not executed, when a draft is saved (as one would expect, since it's only a draft), but is neither executed when a draft is submitted (not as one would expect).
Good that you're fine for the moment.
If you could add a minimal configuration to reproduce the problem, then Stefan would have it easier to debug it. |
68968
|
Fri May 10 08:19:08 2019 |
| Stefan Ritt | stefan.ritt@psi.ch | Question | Windows | 3.1.2 | Re: Execute attribute | I don't understand your question. There is no "inline" vs. "external" script. Using the "execute new = <command>", you run a script on the server side. Can be powershell under Windows or bash/csh under Linux. I remember however that there has been issues under recent windows in passing parameters to the shell. Linux certainly works fine, we usse it all the time.
Alan Grant wrote: |
Apart from an inline shell command that can be run with the Execute attribute, is it possible to run an external script file? I would like to run a Powershell script with the Elog attribute data parameters passed to it upon Submit New entry.
|
|
68969
|
Fri May 10 15:01:52 2019 |
| Alan Grant | agrant@winnipeg.ca | Question | Windows | 3.1.2 | Re: Execute attribute | I think it was just a matter of my specific interepretation of the documentation, ie: using native OS shell commands vs any script language file containing shell commands or any app for that matter. Nevertheless I think you've answered my questiuon so it's all good. Thanks Stefan.
Stefan Ritt wrote: |
I don't understand your question. There is no "inline" vs. "external" script. Using the "execute new = <command>", you run a script on the server side. Can be powershell under Windows or bash/csh under Linux. I remember however that there has been issues under recent windows in passing parameters to the shell. Linux certainly works fine, we usse it all the time.
Alan Grant wrote: |
Apart from an inline shell command that can be run with the Execute attribute, is it possible to run an external script file? I would like to run a Powershell script with the Elog attribute data parameters passed to it upon Submit New entry.
|
|
|
66936
|
Fri Nov 12 16:50:18 2010 |
| Stefan Ritt | stefan.ritt@psi.ch | Question | Mac OSX | 2.7.8 | Re: Execute a python command? |
harley wrote: |
Is there a way to add a button to the elog interface which would execute a python command?
|
No, there are only the options
execute new = ...
execute edit = ...
execute delete = ...
though which you can execute external scripts. Maybe this is enough? |
|