PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchStart with the failed run, not a guessed fix: identify the failing job and step, read its log beside the workflow YAML at that run’s commit, then check runner setup and condition evaluation. If those clues are insufficient, enable GitHub Actions debug logging. The cause varies by run, so use the failure stage and exact error to choose what to investigate next.
Find where the run failed
- Open the run: In your repository, select Actions, choose the workflow, and open the failed run. Review its summary and job graph to see which jobs failed, were skipped, or completed.
- Locate the failing stage: Determine whether the problem appeared before a job started, during job setup, in a particular action or shell step, or while the job was completing. A workflow that fails on every new commit may have invalid syntax or structure in a file under
.github/workflows; a failure within a running job needs a closer look at that job’s output. See GitHub’s workflow run logs guide and workflow monitoring guide.
Read the failing step’s log with its workflow file
Expand the failed step and look for the first meaningful error, then read the surrounding lines for context. Search the log if it is long. Compare what ran with the workflow YAML at the commit associated with this run; a later edit to the default branch may not match the version that failed.
GitHub adds Set up job and Complete job entries to job logs. For a GitHub-hosted runner, expand Set up job to inspect runner-image details and the link to preinstalled software. Compare the reported environment with the versions, tools, and paths your workflow expects. These details can help distinguish a command or action problem from an assumption about the runner.
For team discussion, use the log viewer’s search and download options, or copy a permalink to the relevant log line. Review log content before sharing it: logs and downloaded archives may expose operational details.
#1 Best Overall
Investigate skipped jobs and conditions
If a job ran unexpectedly or was skipped, inspect the evaluation record for its job-level if expression. Download the run’s log archive and open JOB-NAME/system.txt for the affected job. The entries labeled Evaluating, Expanded, and Result show the expression, the values substituted into it at runtime, and the outcome. Compare those expanded values with the values the condition was meant to test. GitHub documents this in its workflow troubleshooting guide.
That evaluation detail is for job-level conditions. For a condition on an individual step, enable step debug logging and inspect the additional output instead.
Turn on debug logging when normal logs are not enough
GitHub’s debug logging documentation says: “If the workflow logs do not provide enough detail to diagnose why a workflow, job, or step is not working as expected, you can enable additional debug logging.” There are two settings with different purposes:
| Setting | What it adds | Use it when |
|---|---|---|
ACTIONS_STEP_DEBUG=true |
More verbose step-log events | An action, command, or step condition needs more detail |
ACTIONS_RUNNER_DEBUG=true |
Runner and worker process logs in the downloaded archive | You are investigating runner startup, coordination, or execution |
You can configure these as repository or environment secrets or variables, subject to the relevant access permissions, or enable debug logging when eligible while rerunning a workflow. Follow GitHub’s debug logging guide for the configuration path available to your repository and run.
Check causes beyond the failing command
Once you know the stage and error, consider whether the issue is in workflow logic, the runner environment, or a wider platform dependency. GitHub’s troubleshooting guide covers billing, runner, and network problems as well as execution issues. A tool’s own verbose mode can reveal detail that Actions does not: GitHub gives npm install --verbose and GIT_TRACE=1 GIT_CURL_VERBOSE=1 git ... as examples. Use such output selectively and review it before sharing.
Rerun deliberately
A rerun can help test a change or collect logs, but it is not a new run under the current user’s identity. GitHub uses the original triggering actor’s privileges and the original GITHUB_SHA and GITHUB_REF. GitHub Docs, Re-running workflows and jobs, states that a run can be rerun for up to 30 days after the initial run, with a maximum of 50 reruns.
You can rerun all jobs, only failed jobs, or a specific job in the GitHub interface. With GitHub CLI, rerun failed jobs with debug logging using gh run rerun RUN_ID --failed --debug. A successful rerun alone does not establish that an intermittent failure is fixed; check what changed between attempts and whether the original cause is understood.
Quick Recap
Best Value
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




