Documentation

Flux profiler package

The Flux profiler package provides performance profiling tools for Flux queries and operations. Import the profiler package:

import "profiler"

Options

The profiler package includes the following options:

import "profiler"

option profiler.enabledProfilers = ["query", "operator"]

enabledProfilers

List of Flux profilers to enable.

Available profilers

query

The query profiler provides statistics about the execution of an entire Flux script. When enabled, results returned by yield() include a table with the following columns:

  • TotalDuration: total query duration in nanoseconds.
  • CompileDuration: number of nanoseconds spent compiling the query.
  • QueueDuration: number of nanoseconds spent queueing.
  • RequeueDuration: number fo nanoseconds spent requeueing.
  • PlanDuration: number of nanoseconds spent planning the query.
  • ExecuteDuration: number of nanoseconds spent executing the query.
  • Concurrency: number of goroutines allocated to process the query.
  • MaxAllocated: maximum number of bytes the query allocated.
  • TotalAllocated: total number of bytes the query allocated (includes memory that was freed and then used again).
  • RuntimeErrors: error messages returned during query execution.
  • flux/query-plan: Flux query plan.
  • influxdb/scanned-values: value scanned by InfluxDB.
  • influxdb/scanned-bytes: number of bytes scanned by InfluxDB.

operator

The operator profiler output statistics about each operation in a query. Operations executed in the storage tier return as a single operation. When the operator profile is enabled, results returned by yield() include a table with a row for each operation and the following columns:

  • Type: operation type
  • Label: operation name
  • Count: total number of times the operation executed
  • MinDuration: minimum duration of the operation in nanoseconds
  • MaxDuration: maximum duration of the operation in nanoseconds
  • DurationSum: total duration of all operation executions in nanoseconds
  • MeanDuration: average duration of all operation executions in nanoseconds

Was this page helpful?

Thank you for your feedback!


Upgrade to InfluxDB Cloud or InfluxDB 2.0!

InfluxDB Cloud and InfluxDB OSS 2.0 ready for production.