Problem
When viewing job logs in sauron, step boundaries (i.e. which job step a log line belongs to) may be inaccurate for some workflow runs.
Background
GitHub's workflow logs zip file API sometimes includes per-step log files (e.g. JobName/1_SetUpJob.txt, JobName/2_Checkout.txt) and sometimes only a single flat file per job (e.g. 0_JobName.txt). Per a gh CLI maintainer (cli/cli#10551):
Sometimes, the ZIP archive includes the logs for the individual steps, sometimes it's not. This is due to the internals of the API back-end. [...] Unfortunately, we don't yet have a full understanding about the underlying causes and we're still following up on this internally.
Current workaround
When sauron receives a flat log file, it splits the combined log into steps using timestamp-based heuristics. The JobStep metadata from the GitHub API provides started_at and completed_at timestamps, but these are truncated to whole-second granularity. Since many steps complete within the same second (especially short setup steps), log lines can end up assigned to the wrong step. We also show a warning in the job node box.
Related issues
Problem
When viewing job logs in sauron, step boundaries (i.e. which job step a log line belongs to) may be inaccurate for some workflow runs.
Background
GitHub's workflow logs zip file API sometimes includes per-step log files (e.g.
JobName/1_SetUpJob.txt,JobName/2_Checkout.txt) and sometimes only a single flat file per job (e.g.0_JobName.txt). Per aghCLI maintainer (cli/cli#10551):Current workaround
When sauron receives a flat log file, it splits the combined log into steps using timestamp-based heuristics. The
JobStepmetadata from the GitHub API providesstarted_atandcompleted_attimestamps, but these are truncated to whole-second granularity. Since many steps complete within the same second (especially short setup steps), log lines can end up assigned to the wrong step. We also show a warning in the job node box.Related issues
--logno longer produces logsUNKNOWN STEPlabel