Skip to main content

The Latest Nextflow documentation is being migrated from nextflow.io. For the most up-to-date content, see https://nextflow.io/docs/ (latest).

Version: Latest

Reports

Nextflow provides several reporting mechanisms to analyze and debug pipeline runs:

Execution log

The nextflow log command shows information about past pipeline runs and task executions. You can query by run name or session ID, and the command provides multiple options to filter and format the output.

By default, nextflow log prints the list of pipeline runs:

$ nextflow log
TIMESTAMP DURATION RUN NAME STATUS REVISION ID SESSION ID COMMAND
2025-12-09 11:43:18 1s naughty_heisenberg OK 2ce0b0e294 bae65ec6-a2b9-49bf-b63e-2fec91945e48 nextflow run hello
2025-12-09 11:43:28 931ms thirsty_swanson OK 2ce0b0e294 bae65ec6-a2b9-49bf-b63e-2fec91945e48 nextflow run hello -resume
2025-12-09 11:43:37 8.5s goofy_kilby OK ca20a6dfd2 d0a60572-076e-451a-b10e-16059ed77e36 nextflow run rnaseq-nf -profile conda

Providing a run name or session ID prints the tasks executed by that pipeline run:

$ nextflow log goofy_kilby
/Users/user/workspace/work/e1/fc2d06782f8263476426c576888033
/Users/user/workspace/work/72/f0542cfa81ad6abeaf1adf02e5cc2b
/Users/user/workspace/work/83/009346a3958358bb704e996d935c7a
/Users/user/workspace/work/84/15e4cd16df1db6f9bc0e22cc05316d

Customizing fields

The -f (-fields) option specifies which fields to include in the log.

nextflow log <run_name> -f [fields]

You can set a custom list of fields to focus on specific information. For example, hash, name, exit, and status:

$ nextflow log goofy_kilby -f hash,name,exit,status
e1/fc2d06 RNASEQ:INDEX (ggal_1_48850000_49020000) 0 COMPLETED
72/f0542c RNASEQ:FASTQC (ggal_gut) 0 COMPLETED
83/009346 RNASEQ:QUANT (ggal_gut) 0 COMPLETED
84/15e4cd MULTIQC 0 COMPLETED

Run the log command with the -l option to see the full list of fields. See log for more information.

Templates

The -t option specifies a template (string or file) to use when inspecting a single run:

nextflow log <run_name> -t <template> > <report>

You can create a template. For example, in Markdown:

## $name

script:

$script

exit status: $exit
task status: $status
task folder: $folder

Then, use it to create a report:

nextflow log goofy_kilby -t my-template.md > execution-report.md

Filtering

The filter option selects which entries to include in the log.

nextflow log <run_name> -filter '<filters>'

Any valid Groovy boolean expression on the log fields can be used to define the filter condition. For example, you can filter for task names matching a pattern:

nextflow log goofy_kilby -filter 'name =~ /hello.*/ && status == "FAILED"'

Execution report

The execution report is an HTML report that includes metrics about a pipeline run. The report is organized into three sections: Summary, Resources, and Tasks.

To enable the execution report, add the -with-report option when launching a pipeline run:

nextflow run <pipeline> -with-report [file_name]

You can also enable the report in your Nextflow configuration:

report {
enabled = true
file = 'report.html'
}

See report for the list of available config options.

Summary

The Summary section reports the execution status, the launch command, overall execution time, and other workflow metadata:

Report summary

Resource usage

The Resources section plots the distribution of resource usage for each workflow process using the interactive plotly.js plotting library.

Plots are shown for CPU, memory, job duration, and disk I/O. Each usage metric is shown both in raw form and as a percentage of the requested resources. These plots are helpful to check that task resources are used efficiently.

![Usage CPUs] _static/report-resources-min.png

For information about how resource usage is computed, see Understanding task resource metrics.

Tasks

The Tasks section lists all executed tasks, reporting the status, command script, and other metrics for each task:

Tasks

The same caveats for the trace file also apply to the task table.

Execution timeline

The execution timeline is an HTML report that shows a timeline of the tasks executed in a pipeline run:

Execution timeline

The x-axis shows elapsed time relative to workflow launch. The y-axis shows a bar for each task execution. Each bar has the following properties (with the equivalent trace fields in parentheses):

  • Bar length: Task duration (duration)
  • Bar color: Identifies tasks from the same process
  • Colored area: Real execution time (realtime)
  • Gray area (left): Task scheduling time (start - submit)
  • Gray area (right): Task termination time (complete - start - realtime)
  • Label: Task duration (duration) and peak memory usage (peak_rss)

To enable the execution timeline, add the -with-timeline option when launching a pipeline run:

nextflow run <pipeline> -with-timeline [file_name]

You can also enable the execution timeline in your Nextflow configuration:

timeline {
enabled = true
file = 'timeline.html'
}

See timeline for the list of available config options.

Trace file

The trace file is a CSV file containing information about each task executed in a pipeline run, including submission time, start time, completion time, CPU usage, and memory usage.

To create the trace file, add the -with-trace option when launching a pipeline:

nextflow run <pipeline> -with-trace

The above command creates a file named trace.txt in the current directory. For example:

task_idhashnative_idnamestatusexitsubmitdurationrealtime%cpupeak_rsspeak_vmemrcharwchar
1945/ab752a2032blast (1)COMPLETED02014-10-23 16:33:16.2881m5s0.0%29.8 MB354 MB33.3 MB0
2072/db873d2033blast (2)COMPLETED02014-10-23 16:34:17.21130s10s35.7%152.8 MB428.1 MB192.7 MB1 MB
2153/d131882034blast (3)COMPLETED02014-10-23 16:34:17.51829s20s4.5%289.5 MB381.6 MB33.3 MB0
28b4/0f96132041exonerate (1)COMPLETED02014-10-23 16:38:19.6571m 30s1m 11s94.3%611.6 MB693.8 MB961.2 GB6.1 GB
31d7/eabe512042exonerate (3)COMPLETED02014-10-23 16:45:50.8463m 1s2m 6s130.1%703.3 MB760.9 MB1.1 TB28.6 GB
304f/1ad1f02043exonerate (2)COMPLETED02014-10-23 16:45:50.96110m 2s9m 16s95.5%706.2 MB764 MB1.6 TB172.4 GB
5272/41d0c62055similarity (1)COMPLETED02014-10-23 17:13:23.54330s352ms0.0%35.6 MB58.3 MB199.3 MB7.9 MB
533e/bca30f2061similarity (2)COMPLETED02014-10-23 17:13:23.77030s238ms0.0%6.7 MB29.6 MB190 MB91.2 MB
548b/d45b472062similarity (3)COMPLETED02014-10-23 17:13:23.80830s442ms0.0%108.1 MB158 MB832 MB565.6 MB
98de/d6c0a62099matrix (1)COMPLETED02014-10-23 17:14:27.13930s1s0.0%4.8 MB42 MB240.6 MB79 KB

The following caveats apply to trace metrics:

  • Nextflow collects trace metrics through a background process for each job in the target environment. Make sure the following tools are available in the environment where tasks are executed: awk, date, grep, ps, sed, tail, tee. Container images that do not include all of these tools may lead to missing data.

  • Trace metrics provide an estimation of the resources used by running tasks. They are not an alternative to low-level performance analysis tools, and they may not be accurate for very short-lived tasks (e.g., less than a few seconds).

  • Some trace metrics are not reported when running on macOS.

You can also enable the trace file in your Nextflow configuration:

trace {
enabled = true
file = 'trace.txt'
}

See trace for the list of available config options.

Workflow diagram

A Nextflow pipeline can be represented as a directed acyclic graph (DAG). The vertices in the graph represent the pipeline's processes and operators, while the edges represent the data dependencies (i.e., channels) between them.

To render the workflow DAG, run your pipeline with the -with-dag option. By default, it creates a file named dag-<timestamp>.html with the workflow DAG rendered as a Mermaid diagram.

The workflow DAG can be rendered in a different format by specifying an output file name with a different extension based on the desired format. For example:

nextflow run main.nf -with-dag flowchart.png
tip

Use the -preview option with -with-dag to render the workflow DAG without executing any tasks.

The following example shows the Mermaid diagram for the rnaseq-nf pipeline (using the Mermaid Live Editor with the default theme):

nextflow run rnaseq-nf -preview -with-dag

See dag for the list of available config options.