Skip to content

Monitoring

By default, goodseed automatically captures system info in a background thread:

  • stdout / stderr — every print() and warning is logged as a string series
  • Tracebacks — captured on unhandled exceptions (run status set to failed)
  • CPU & memory — via psutil (included)
  • GPU — NVIDIA (via nvidia-smi) and AMD (via rocm-smi), no extra dependency needed

Disable any capture individually:

run = goodseed.Run(
capture_stdout=False,
capture_stderr=False,
capture_hardware_metrics=False,
capture_traceback=False,
)

By default, Run() auto-tracks Git metadata from the current repository:

  • Dirty state, current branch, remotes
  • Last commit message, ID, author, and date
  • source_code/diff — index vs HEAD
  • source_code/diff_upstream_<sha> — when HEAD differs from the remote tracking branch

Point to a different repository:

run = goodseed.Run(
git_ref=goodseed.GitRef(repository_path="/path/to/repo")
)

Disable git tracking entirely:

run = goodseed.Run(git_ref=False)