Share a Nextflow execution report
-with-report produces the thing that makes pipeline tuning possible:
per-process CPU, memory, I/O and wall time, with the task table
underneath. It is how you find out that the process you have been
optimizing takes four minutes and the one you never look at takes six
hours.
It writes to the launch directory, which on most setups is on a cluster head node that the person paying for the compute cannot reach.
Publish it
nextflow run main.nf \
-with-report report.html \
-with-timeline timeline.html || true
curl -fsS -X PATCH \
"https://commareports.com/api/v1/reports/$COMMA_REPORT_ID" \
-H "Authorization: Bearer $COMMA_API_TOKEN" \
-H "Content-Type: application/json" \
-d "$(jq -n --rawfile html report.html \
--arg title "Pipeline — $PIPELINE — run $RUN_ID" \
'{title: $title, html: $html}')"
Or drag report.html into the app. The
charts stay interactive — scripts run inside a sandboxed iframe
(allow-scripts, no allow-same-origin).
|| true because a failed run is the one people most want to look at.
Keep the timeline as a second report id; it answers a different question
than the resource report and deserves its own URL and history.
What the URL changes
- Notes on the process. "This is I/O bound on the shared filesystem, not CPU" pinned to the row. See commenting on HTML.
- Run-over-run comparison. Before and after a
memorydirective change, at one URL. See revisions and diffs. - Readable without cluster access — by a PI, a platform owner, or whoever signs off the compute budget.
- Private by default — see the sharing model.
Limits
- HTML body: 5 MB. A run with tens of thousands of tasks embeds a large task table and can exceed it; publish the report for a representative run, or attach the full trace file as an asset.
- 60 requests/minute per token.
Try it
Comma is free — unlimited reports, unlimited commenters, unlimited revision history.
Related
- MultiQC reports — the QC the pipeline produces
- Profiling reports · Benchmark reports
- Publish from CI · Routines