Hi Everyone,

I’m trying to do some quick and dirty logging to track down an issue at a 
customer’s site. As part of that I need to log some information to a file, 
always on the server. I figured the simplest would be to call a method each 
time I need to log some information and pass the info to it. The method has the 
Execute on Server property set so all logging happens on the server. I don’t 
want anything tied up waiting for the logging to happen, so I have the method 
call a worker process (on the server) and pass in the relevant information to 
it. The worker is responsible to run some checks, ensure the correct file 
exists, write the information to the file, and possibly send a Slack message. 
Using a worker also ensures that a file is not being opened by multiple 
processes at the same time.

So far all this works as hoped for and was simple to code. The problem is that 
the worker process needs to run the checks a few seconds _after_ the initial 
request to log information happened. Since the worker is just in a cooperative 
process I figured I could add DELAY PROCESS. But it seems not to work.

I could re-engineer the whole thing to use a background process in a loop on 
the server and some IP arrays or a table, but was hoping to keep it simpler. 
Does anyone know how to pause a worker process for a few seconds?

This is v17.1HF1.


Synergy Farm Solutions Inc.
Aetna, AB Canada

4D Internet Users Group (4D iNUG)
Archive:  http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com

Reply via email to