Skip to content

feat: collect and forward runner job logs #16

@STRRL

Description

@STRRL

Problem

Currently there is no visibility into what happens inside a runner during job execution. When a job fails, the only way to debug is through the GitHub Actions UI. The controller has no access to runner-level logs.

Proposal

Add the ability to collect logs from runner containers/VMs and forward them to a central location:

Docker runners

  • Capture container logs via docker logs <name> after job completion
  • Optionally stream logs in real-time via docker logs -f
  • Store logs locally or forward to a log aggregator

Tart VM runners

  • Collect runner logs from ~/actions-runner/_diag/ inside the VM via SSH before cleanup
  • Capture run.sh stdout/stderr from the nohup log

Forwarding options

  • Local file storage (per-job log files)
  • Stdout (for integration with external log collectors like fluentd/vector)
  • Optional: webhook/HTTP endpoint for log shipping

Use Cases

  • Debug failed jobs without going to GitHub UI
  • Monitor runner health and performance
  • Audit trail for security-sensitive workloads

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions