Finch Docs
Toggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

_all.yaml

The optional all stages file _all.yaml is YAML format and applies to all stages in the same directory. It’s like a MySQL defaults file (my.cnf): it provides a default configuration that stage files in the same directory inherit but can also override.

_all.yaml is not a stage file. There is no top-level stage section. The only valid top-level sections in _all.yaml are mysql, parameters, and stats. These three sections can be specified in a stage file to override _all.yaml.

This is a quick reference with fake but syntactically valid values:

mysql:
  db: ""
  dsn: ""
  hostname: ""
  mycnf: ""
  password: ""
  password-file: ""
  socket: ""
  timeout-connect: "10s"
  username: ""

  disable-auto-tls: false

  tls:

parameters:
  key1: "value1"
  keyN: "valueN"

stats:
  disable: false
  freq: "5s"
  report:
    csv:
      percentiles: "P95,P99"
      # More csv reporter params
    stdout:
      percentiles: "P999"
      # More stdout reporter params

mysql

The mysql section configures the connection to MySQL for all clients.

db

Default datbase.

dsn

Data source.

hostname

Hostname of MySQL.

mycnf

my.cnf to read default MySQL configuraiton.

password

MySQL user password.

password-file

File to read MySQL user password from.

socket

MySQL socket.

timeout-connect

Timeout on connecting to MySQL.

username

MySQL username


params

The params section is an optional key-value map of strings. See Intro / Concepts / Parameters and Syntax / Params.


stats

The stats section configure statistics collection and reporting. By default, Finch prints statistics once, to stdout, when the stage completes. Different reporters can be used at the same time, but only one instance of each reporter.

disable

  • Default: false
  • Value: boolean

Disable stats. For example, you can enable and configure stats once in _all.yaml for all stages, but disable stats in a DDL stage by specifying:

# DDL stage
stage:
  stats:
    disable: true

freq

How frequently to report periodic stats for all reporters. (Frequency per reporter is not supported.) If disabled, only one final report is printed at the end of the stage.

See Benchmark / Statistics / Frequency.

report

The report section is a map keyed on reporter name (built-in and custom). The value of each map is a key-value map of reporter-specific parameters.

stats:
  report:
    stdout:
      percentiles: "P95,P99"
    csv:
      percentiles: "P999"

See Benchmark / Statistics / Reporters for stdout and cvs parameters.