Skip to content

Latest commit

 

History

History

mysqlreceiver

MySQL Receiver

Status
Stability beta: metrics
Distributions contrib, observiq, sumo

This receiver queries MySQL's global status and InnoDB tables.

Prerequisites

This receiver supports MySQL version 8.0

Collecting most metrics requires the ability to execute SHOW GLOBAL STATUS.

Configuration

The following settings are optional:

  • endpoint: (default = localhost:3306)

  • username: (default = root)

  • password: The password to the username.

  • allow_native_passwords: (default = true)

  • database: The database name. If not specified, metrics will be collected for all databases.

  • collection_interval (default = 10s): This receiver collects metrics on an interval. This value must be a string readable by Golang's time.ParseDuration. Valid time units are ns, us (or µs), ms, s, m, h.

  • initial_delay (default = 1s): defines how long this receiver waits before starting.

  • transport: (default = tcp): Defines the network to use for connecting to the server.

  • statement_events: Additional configuration for query to build mysql.statement_events.count and mysql.statement_events.wait.time metrics:

    • digest_text_limit - maximum length of digest_text. Longer text will be truncated (default=120)
    • time_limit - maximum time from since the statements have been observed last time (default=24h)
    • limit - limit of records, which is maximum number of generated metrics (default=250)

Example Configuration

receivers:
  mysql:
    endpoint: localhost:3306
    username: otel
    password: ${env:MYSQL_PASSWORD}
    database: otel
    collection_interval: 10s
    initial_delay: 1s
    statement_events:
      digest_text_limit: 120
      time_limit: 24h
      limit: 250

The full list of settings exposed for this receiver are documented here with detailed sample configurations here.

Metrics

Details about the metrics produced by this receiver can be found in metadata.yaml