Summary
Event logs are always written to $TMPDIR/conductor/ (typically /tmp/conductor/) with no way to configure the output directory.
Problem
・Event logs in tmp are lost on reboot or tmpwatch cleanup
・Users must manually copy event logs to a persistent directory after each run
・When a workflow crashes without a workflow_failed event, the only diagnostic is the event log -- which may already be gone
・The event log subscriber is always-on by design (correct -- it's a flight recorder), but the output location should be user-configurable
・Configurable log output directories are standard in self-hosted orchestration tools: Airflow(base_log_folder), Argo workflows(artifactRepository), Temporal, Prefect, Docker(log-driver), Kubernetes(--log-dir)
Proposal
Add an event_log_dir field to the runtime: block in workflow YAML.
workflow:
runtime:
event_log_dir: ./logs
When omitted, behavior is unchanged($TMPDIR/conductor/).
Relative paths are resolved against the workflow file's directory.
Summary
Event logs are always written to $TMPDIR/conductor/ (typically /tmp/conductor/) with no way to configure the output directory.
Problem
・Event logs in tmp are lost on reboot or tmpwatch cleanup
・Users must manually copy event logs to a persistent directory after each run
・When a workflow crashes without a workflow_failed event, the only diagnostic is the event log -- which may already be gone
・The event log subscriber is always-on by design (correct -- it's a flight recorder), but the output location should be user-configurable
・Configurable log output directories are standard in self-hosted orchestration tools: Airflow(base_log_folder), Argo workflows(artifactRepository), Temporal, Prefect, Docker(log-driver), Kubernetes(--log-dir)
Proposal
Add an event_log_dir field to the runtime: block in workflow YAML.
When omitted, behavior is unchanged($TMPDIR/conductor/).
Relative paths are resolved against the workflow file's directory.