Skip to content

tracker.yml Reports

Pipeline authors can include a tracker.yml file in the workflow's output directory to define reports that Tracker will display in the Reports tab on the run detail page.

Format

reports:
  "<pattern>":
    display: "<display name>"
  "<pattern>":
    display: "<display name>"

Each key under reports is a glob pattern matched against published output files (relative to the output directory). The display field is the human-readable name shown in the Reports dropdown.

Example

reports:
  "multiqc/multiqc_report.html":
    display: "MultiQC Report"
  "**/VEP/**/summary.html":
    display: "VEP Summary"
  "results/*_coverage.pdf":
    display: "Coverage Report"

Pattern Matching

Patterns use standard glob syntax and are matched against output file paths relative to the run's output_dir.

Pattern Matches
multiqc_report.html Exact filename in output root
multiqc/multiqc_report.html Exact path relative to output dir
*_report.html Any file ending in _report.html in output root
**/*.html Any .html file at any depth
**/VEP/**/summary.html summary.html under any VEP subdirectory
results/sample?.csv Single-character wildcard (e.g., sample1.csv, sampleA.csv)

Glob Syntax Reference

Symbol Meaning
* Matches any characters within a single path segment
** Matches zero or more path segments (recursive)
? Matches exactly one character

Disambiguation

When a pattern matches multiple files, Tracker automatically appends the minimum differentiating path segment to the display name. For example:

reports:
  "**/VEP/**/summary.html":
    display: "VEP Summary"

If this matches:

  • reports/VEP/strelka/sample1/summary.html
  • reports/VEP/strelka/sample2/summary.html

The Reports dropdown will show:

  • VEP Summary (sample1)
  • VEP Summary (sample2)

This disambiguation is automatic -- you do not need to handle it in your tracker.yml.

How It Works

  1. When a workflow completes (succeeded or failed), Tracker fetches <output_dir>/tracker.yml from S3.
  2. Each pattern is matched against the run's published Output records.
  3. Matched files become entries in the Reports tab with the specified display names.
  4. The resolved reports are stored in the run's metadata (JSONB).

Tip

The file can be written from the Nextflow script layer (e.g., in workflow.onComplete), but it's best to publish it from a task so that it also appears in Tracker's output browser.

Supported Preview Formats

The Reports tab previews files directly in the browser based on their extension:

Format Extensions Rendering Max Size
HTML .html Iframe (full rendering) 25 MB
PDF .pdf Iframe (browser PDF viewer) 25 MB
CSV/TSV .csv, .tsv Formatted table with auto-detected delimiter 25 MB
Images .png, .jpg, .gif, .svg, .webp Inline image 25 MB
JSON .json Pretty-printed code block 25 MB
Text .txt, .log, .yaml Code block 25 MB

Files exceeding 25 MB will not be previewed inline but can still be downloaded.

Deep Linking

Share a link to a specific report using the URL hash #reports:N, where N is the 0-based report index:

https://tracker.292967571998.natera.io/runs/daq-large-test-d37b9cd/#reports:1

This opens the run detail page with the Reports tab active and the second report selected.

Note

For more on how reports appear in the Tracker UI, see Reports in the User Guide.