Menu

This is documentation for the next version of Alloy. For the latest stable release, go to the latest version.

Open source

Experimental

database_observability.mysql

EXPERIMENTAL: This is an experimental component. Experimental components are subject to frequent breaking changes, and may be removed with no equivalent replacement. The stability.level flag must be set to experimental to use the component.

Usage

alloy
database_observability.mysql "LABEL" {
  data_source_name = DATA_SOURCE_NAME
  forward_to       = [LOKI_RECEIVERS]
}

Arguments

The following arguments are supported:

NameTypeDescriptionDefaultRequired
data_source_namesecretData Source Name for the MySQL server to connect to.yes
forward_tolist(LogsReceiver)Where to forward log entries after processing.yes
collect_intervaldurationHow frequently to collect information from database"10s"no
query_samples_enabledboolWhether to enable collection of query samplestrueno

Blocks

The database_observability.mysql component does not support any blocks, and is configured fully through arguments.

Example

alloy
database_observability.mysql "orders_db" {
  data_source_name = "user:pass@mysql:3306/"
  forward_to = [loki.write.logs_service.receiver]
}

prometheus.scrape "orders_db" {
  targets = database_observability.mysql.orders_db.targets
  honor_labels = true // required to keep job and instance labels
  forward_to = [prometheus.remote_write.metrics_service.receiver]
}

prometheus.remote_write "metrics_service" {
  endpoint {
    url = sys.env("GCLOUD_HOSTED_METRICS_URL")
    basic_auth {
      username = sys.env("GCLOUD_HOSTED_METRICS_ID")
      password = sys.env("GCLOUD_RW_API_KEY")
    }
  }
}

loki.write "logs_service" {
  endpoint {
    url = sys.env("GCLOUD_HOSTED_LOGS_URL")
    basic_auth {
      username = sys.env("GCLOUD_HOSTED_LOGS_ID")
      password = sys.env("GCLOUD_RW_API_KEY")
    }
  }
}

Compatible components

database_observability.mysql can accept arguments from the following components:

database_observability.mysql has exports that can be consumed by the following components:

Note

Connecting some components may not be sensible or components may require further configuration to make the connection work correctly. Refer to the linked documentation for more details.