a task is queued into a separate process (using separate_process = TRUE)
logging is enabled for the worker
The latter is not on by default but it could be. It will work generally quite well in places where the worker and controller share a filesystem, and poorly otherwise.
When logging is enabled, we add a logfile key at task start, and update the call to callr::r_bg to stream both stdout and stderr there. You can then use rrq_task_log() to read the contents.
This PR enables per-task logging.
There are two prerequisites for using this:
separate_process = TRUE
)The latter is not on by default but it could be. It will work generally quite well in places where the worker and controller share a filesystem, and poorly otherwise.
When logging is enabled, we add a logfile key at task start, and update the call to
callr::r_bg
to stream both stdout and stderr there. You can then userrq_task_log()
to read the contents.