Skip to content

feat(runtime): allow event log output directory to be configured in workflow.yaml #475

Description

@nskun

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions