summaryrefslogtreecommitdiffstats
path: root/src/go/collectors/go.d.plugin/modules/mysql/metadata.yaml
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/go/collectors/go.d.plugin/modules/mysql/metadata.yaml806
1 files changed, 806 insertions, 0 deletions
diff --git a/src/go/collectors/go.d.plugin/modules/mysql/metadata.yaml b/src/go/collectors/go.d.plugin/modules/mysql/metadata.yaml
new file mode 100644
index 000000000..1bc133238
--- /dev/null
+++ b/src/go/collectors/go.d.plugin/modules/mysql/metadata.yaml
@@ -0,0 +1,806 @@
+plugin_name: go.d.plugin
+modules:
+ - &module
+ meta: &meta
+ id: collector-go.d.plugin-mysql
+ plugin_name: go.d.plugin
+ module_name: mysql
+ monitored_instance:
+ name: MySQL
+ link: https://www.mysql.com/
+ categories:
+ - data-collection.database-servers
+ icon_filename: mysql.svg
+ related_resources:
+ integrations:
+ list:
+ - plugin_name: apps.plugin
+ module_name: apps
+ - plugin_name: cgroups.plugin
+ module_name: cgroups
+ info_provided_to_referring_integrations:
+ description: ""
+ keywords:
+ - "db"
+ - "database"
+ - "mysql"
+ - "maria"
+ - "mariadb"
+ - "sql"
+ most_popular: true
+ overview:
+ multi_instance: true
+ data_collection:
+ metrics_description: |
+ This collector monitors the health and performance of MySQL servers and collects general statistics, replication and user metrics.
+ method_description: |
+ It connects to the MySQL instance via a TCP or UNIX socket and executes the following commands:
+
+ Executed queries:
+
+ - `SELECT VERSION();`
+ - `SHOW GLOBAL STATUS;`
+ - `SHOW GLOBAL VARIABLES;`
+ - `SHOW SLAVE STATUS;` or `SHOW ALL SLAVES STATUS;` (MariaDBv10.2+) or `SHOW REPLICA STATUS;` (MySQL 8.0.22+)
+ - `SHOW USER_STATISTICS;` (MariaDBv10.1.1+)
+ - `SELECT TIME,USER FROM INFORMATION_SCHEMA.PROCESSLIST;`
+ default_behavior:
+ auto_detection:
+ description: |
+ By default, it detects instances running on localhost by trying to connect as root and netdata using known MySQL TCP and UNIX sockets:
+
+ - /var/run/mysqld/mysqld.sock
+ - /var/run/mysqld/mysql.sock
+ - /var/lib/mysql/mysql.sock
+ - /tmp/mysql.sock
+ - 127.0.0.1:3306
+ - "[::1]:3306"
+ limits:
+ description: ""
+ performance_impact:
+ description: ""
+ additional_permissions:
+ description: ""
+ supported_platforms:
+ include: []
+ exclude: []
+ setup:
+ prerequisites:
+ list:
+ - title: Create netdata user
+ description: |
+ A user account should have the
+ following [permissions](https://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html):
+
+ - [`USAGE`](https://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html#priv_usage)
+ - [`REPLICATION CLIENT`](https://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html#priv_replication-client)
+ - [`PROCESS`](https://dev.mysql.com/doc/refman/8.0/en/privileges-provided.html#priv_process)
+
+ To create the `netdata` user with these permissions, execute the following in the MySQL shell:
+
+ ```mysql
+ CREATE USER 'netdata'@'localhost';
+ GRANT USAGE, REPLICATION CLIENT, PROCESS ON *.* TO 'netdata'@'localhost';
+ FLUSH PRIVILEGES;
+ ```
+
+ The `netdata` user will have the ability to connect to the MySQL server on localhost without a password. It will only
+ be able to gather statistics without being able to alter or affect operations in any way.
+ configuration:
+ file:
+ name: go.d/mysql.conf
+ options:
+ description: |
+ The following options can be defined globally: update_every, autodetection_retry.
+ folding:
+ title: Config options
+ enabled: true
+ list:
+ - name: update_every
+ description: Data collection frequency.
+ default_value: 5
+ required: false
+ - name: autodetection_retry
+ description: Recheck interval in seconds. Zero means no recheck will be scheduled.
+ default_value: 0
+ required: false
+ - name: dsn
+ description: MySQL server DSN (Data Source Name). See [DSN syntax](https://github.com/go-sql-driver/mysql#dsn-data-source-name).
+ default_value: root@tcp(localhost:3306)/
+ required: true
+ - name: my.cnf
+ description: Specifies the my.cnf file to read the connection settings from the [client] section.
+ default_value: ""
+ required: false
+ - name: timeout
+ description: Query timeout in seconds.
+ default_value: 1
+ required: false
+ examples:
+ folding:
+ title: Config
+ enabled: true
+ list:
+ - name: TCP socket
+ description: An example configuration.
+ config: |
+ jobs:
+ - name: local
+ dsn: netdata@tcp(127.0.0.1:3306)/
+ - name: Unix socket
+ description: An example configuration.
+ config: |
+ jobs:
+ - name: local
+ dsn: netdata@unix(/var/lib/mysql/mysql.sock)/
+ - name: Connection with password
+ description: An example configuration.
+ config: |
+ jobs:
+ - name: local
+ dsn: netconfig:password@tcp(127.0.0.1:3306)/
+ - name: my.cnf
+ description: An example configuration.
+ config: |
+ jobs:
+ - name: local
+ my.cnf: '/etc/my.cnf'
+ - name: Multi-instance
+ description: |
+ > **Note**: When you define multiple jobs, their names must be unique.
+
+ Local and remote instances.
+ config: |
+ jobs:
+ - name: local
+ dsn: netdata@tcp(127.0.0.1:3306)/
+
+ - name: remote
+ dsn: netconfig:password@tcp(203.0.113.0:3306)/
+ troubleshooting:
+ problems:
+ list: []
+ alerts:
+ - name: mysql_10s_slow_queries
+ metric: mysql.queries
+ info: number of slow queries in the last 10 seconds
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_10s_table_locks_immediate
+ metric: mysql.table_locks
+ info: number of table immediate locks in the last 10 seconds
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_10s_table_locks_waited
+ metric: mysql.table_locks
+ info: number of table waited locks in the last 10 seconds
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_10s_waited_locks_ratio
+ metric: mysql.table_locks
+ info: ratio of waited table locks over the last 10 seconds
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_connections
+ metric: mysql.connections_active
+ info: client connections utilization
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_replication
+ metric: mysql.slave_status
+ info: "replication status (0: stopped, 1: working)"
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_replication_lag
+ metric: mysql.slave_behind
+ info: difference between the timestamp of the latest transaction processed by the SQL thread and the timestamp of the same transaction when it was processed on the master
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_galera_cluster_size_max_2m
+ metric: mysql.galera_cluster_size
+ info: maximum galera cluster size in the last 2 minutes starting one minute ago
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_galera_cluster_size
+ metric: mysql.galera_cluster_size
+ info: current galera cluster size, compared to the maximum size in the last 2 minutes
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_galera_cluster_state_warn
+ metric: mysql.galera_cluster_state
+ info: galera node state is either Donor/Desynced or Joined
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_galera_cluster_state_crit
+ metric: mysql.galera_cluster_state
+ info: galera node state is either Undefined or Joining or Error
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ - name: mysql_galera_cluster_status
+ metric: mysql.galera_cluster_status
+ info: galera node is part of a nonoperational component. This occurs in cases of multiple membership changes that result in a loss of Quorum or in cases of split-brain situations.
+ link: https://github.com/netdata/netdata/blob/master/src/health/health.d/mysql.conf
+ metrics:
+ folding:
+ title: Metrics
+ enabled: false
+ description: ""
+ availability:
+ - MySQL
+ - MariaDB
+ - Percona
+ scopes:
+ - name: global
+ description: These metrics refer to the entire monitored application.
+ labels: []
+ metrics:
+ - name: mysql.net
+ description: Bandwidth
+ unit: kilobits/s
+ chart_type: area
+ dimensions:
+ - name: in
+ - name: out
+ - name: mysql.queries
+ description: Queries
+ unit: queries/s
+ chart_type: line
+ dimensions:
+ - name: queries
+ - name: questions
+ - name: slow_queries
+ - name: mysql.queries_type
+ description: Queries By Type
+ unit: queries/s
+ chart_type: stacked
+ dimensions:
+ - name: select
+ - name: delete
+ - name: update
+ - name: insert
+ - name: replace
+ - name: mysql.handlers
+ description: Handlers
+ unit: handlers/s
+ chart_type: line
+ dimensions:
+ - name: commit
+ - name: delete
+ - name: prepare
+ - name: read_first
+ - name: read_key
+ - name: read_next
+ - name: read_prev
+ - name: read_rnd
+ - name: read_rnd_next
+ - name: rollback
+ - name: savepoint
+ - name: savepointrollback
+ - name: update
+ - name: write
+ - name: mysql.table_open_cache_overflows
+ description: Table open cache overflows
+ unit: overflows/s
+ chart_type: line
+ dimensions:
+ - name: open_cache
+ - name: mysql.table_locks
+ description: Table Locks
+ unit: locks/s
+ chart_type: line
+ dimensions:
+ - name: immediate
+ - name: waited
+ - name: mysql.join_issues
+ description: Table Select Join Issues
+ unit: joins/s
+ chart_type: line
+ dimensions:
+ - name: full_join
+ - name: full_range_join
+ - name: range
+ - name: range_check
+ - name: scan
+ - name: mysql.sort_issues
+ description: Table Sort Issues
+ unit: issues/s
+ chart_type: line
+ dimensions:
+ - name: merge_passes
+ - name: range
+ - name: scan
+ - name: mysql.tmp
+ description: Tmp Operations
+ unit: events/s
+ chart_type: line
+ dimensions:
+ - name: disk_tables
+ - name: files
+ - name: tables
+ - name: mysql.connections
+ description: Connections
+ unit: connections/s
+ chart_type: line
+ dimensions:
+ - name: all
+ - name: aborted
+ - name: mysql.connections_active
+ description: Active Connections
+ unit: connections
+ chart_type: line
+ dimensions:
+ - name: active
+ - name: limit
+ - name: max_active
+ - name: mysql.threads
+ description: Threads
+ unit: threads
+ chart_type: line
+ dimensions:
+ - name: connected
+ - name: cached
+ - name: running
+ - name: mysql.threads_created
+ description: Threads Creation Rate
+ unit: threads/s
+ chart_type: line
+ dimensions:
+ - name: created
+ - name: mysql.thread_cache_misses
+ description: Threads Cache Misses
+ unit: misses
+ chart_type: line
+ dimensions:
+ - name: misses
+ - name: mysql.innodb_io
+ description: InnoDB I/O Bandwidth
+ unit: KiB/s
+ chart_type: line
+ dimensions:
+ - name: read
+ - name: write
+ - name: mysql.innodb_io_ops
+ description: InnoDB I/O Operations
+ unit: operations/s
+ chart_type: line
+ dimensions:
+ - name: reads
+ - name: writes
+ - name: fsyncs
+ - name: mysql.innodb_io_pending_ops
+ description: InnoDB Pending I/O Operations
+ unit: operations
+ chart_type: line
+ dimensions:
+ - name: reads
+ - name: writes
+ - name: fsyncs
+ - name: mysql.innodb_log
+ description: InnoDB Log Operations
+ unit: operations/s
+ chart_type: line
+ dimensions:
+ - name: waits
+ - name: write_requests
+ - name: writes
+ - name: mysql.innodb_cur_row_lock
+ description: InnoDB Current Row Locks
+ unit: operations
+ chart_type: line
+ dimensions:
+ - name: current waits
+ - name: mysql.innodb_rows
+ description: InnoDB Row Operations
+ unit: operations/s
+ chart_type: area
+ dimensions:
+ - name: inserted
+ - name: read
+ - name: updated
+ - name: deleted
+ - name: mysql.innodb_buffer_pool_pages
+ description: InnoDB Buffer Pool Pages
+ unit: pages
+ chart_type: line
+ dimensions:
+ - name: data
+ - name: dirty
+ - name: free
+ - name: misc
+ - name: total
+ - name: mysql.innodb_buffer_pool_pages_flushed
+ description: InnoDB Buffer Pool Flush Pages Requests
+ unit: requests/s
+ chart_type: line
+ dimensions:
+ - name: flush_pages
+ - name: mysql.innodb_buffer_pool_bytes
+ description: InnoDB Buffer Pool Bytes
+ unit: MiB
+ chart_type: line
+ dimensions:
+ - name: data
+ - name: dirty
+ - name: mysql.innodb_buffer_pool_read_ahead
+ description: InnoDB Buffer Pool Read Pages
+ unit: pages/s
+ chart_type: line
+ dimensions:
+ - name: all
+ - name: evicted
+ - name: mysql.innodb_buffer_pool_read_ahead_rnd
+ description: InnoDB Buffer Pool Random Read-Aheads
+ unit: operations/s
+ chart_type: line
+ dimensions:
+ - name: read-ahead
+ - name: mysql.innodb_buffer_pool_ops
+ description: InnoDB Buffer Pool Operations
+ unit: operations/s
+ chart_type: area
+ dimensions:
+ - name: disk_reads
+ - name: wait_free
+ - name: mysql.innodb_os_log
+ description: InnoDB OS Log Pending Operations
+ unit: operations
+ chart_type: line
+ dimensions:
+ - name: fsyncs
+ - name: writes
+ - name: mysql.innodb_os_log_fsync_writes
+ description: InnoDB OS Log Operations
+ unit: operations/s
+ chart_type: line
+ dimensions:
+ - name: fsyncs
+ - name: mysql.innodb_os_log_io
+ description: InnoDB OS Log Bandwidth
+ unit: KiB/s
+ chart_type: area
+ dimensions:
+ - name: write
+ - name: mysql.innodb_deadlocks
+ description: InnoDB Deadlocks
+ unit: operations/s
+ chart_type: area
+ dimensions:
+ - name: deadlocks
+ - name: mysql.files
+ description: Open Files
+ unit: files
+ chart_type: line
+ dimensions:
+ - name: files
+ - name: mysql.files_rate
+ description: Opened Files Rate
+ unit: files/s
+ chart_type: line
+ dimensions:
+ - name: files
+ - name: mysql.connection_errors
+ description: Connection Errors
+ unit: errors/s
+ chart_type: line
+ dimensions:
+ - name: accept
+ - name: internal
+ - name: max
+ - name: peer_addr
+ - name: select
+ - name: tcpwrap
+ - name: mysql.opened_tables
+ description: Opened Tables
+ unit: tables/s
+ chart_type: line
+ dimensions:
+ - name: tables
+ - name: mysql.open_tables
+ description: Open Tables
+ unit: tables
+ chart_type: area
+ dimensions:
+ - name: cache
+ - name: tables
+ - name: mysql.process_list_fetch_query_duration
+ description: Process List Fetch Duration
+ unit: milliseconds
+ chart_type: line
+ dimensions:
+ - name: duration
+ - name: mysql.process_list_queries_count
+ description: Queries Count
+ unit: queries
+ chart_type: stacked
+ dimensions:
+ - name: system
+ - name: user
+ - name: mysql.process_list_longest_query_duration
+ description: Longest Query Duration
+ unit: seconds
+ chart_type: line
+ dimensions:
+ - name: duration
+ - name: mysql.qcache_ops
+ description: QCache Operations
+ unit: queries/s
+ chart_type: line
+ dimensions:
+ - name: hits
+ - name: lowmem_prunes
+ - name: inserts
+ - name: not_cached
+ - name: mysql.qcache
+ description: QCache Queries in Cache
+ unit: queries
+ chart_type: line
+ dimensions:
+ - name: queries
+ - name: mysql.qcache_freemem
+ description: QCache Free Memory
+ unit: MiB
+ chart_type: area
+ dimensions:
+ - name: free
+ - name: mysql.qcache_memblocks
+ description: QCache Memory Blocks
+ unit: blocks
+ chart_type: line
+ dimensions:
+ - name: free
+ - name: total
+ - name: mysql.galera_writesets
+ description: Replicated Writesets
+ unit: writesets/s
+ chart_type: line
+ dimensions:
+ - name: rx
+ - name: tx
+ - name: mysql.galera_bytes
+ description: Replicated Bytes
+ unit: KiB/s
+ chart_type: area
+ dimensions:
+ - name: rx
+ - name: tx
+ - name: mysql.galera_queue
+ description: Galera Queue
+ unit: writesets
+ chart_type: line
+ dimensions:
+ - name: rx
+ - name: tx
+ - name: mysql.galera_conflicts
+ description: Replication Conflicts
+ unit: transactions
+ chart_type: area
+ dimensions:
+ - name: bf_aborts
+ - name: cert_fails
+ - name: mysql.galera_flow_control
+ description: Flow Control
+ unit: ms
+ chart_type: area
+ dimensions:
+ - name: paused
+ - name: mysql.galera_cluster_status
+ description: Cluster Component Status
+ unit: status
+ chart_type: line
+ dimensions:
+ - name: primary
+ - name: non_primary
+ - name: disconnected
+ - name: mysql.galera_cluster_state
+ description: Cluster Component State
+ unit: state
+ chart_type: line
+ dimensions:
+ - name: undefined
+ - name: joining
+ - name: donor
+ - name: joined
+ - name: synced
+ - name: error
+ - name: mysql.galera_cluster_size
+ description: Number of Nodes in the Cluster
+ unit: nodes
+ chart_type: line
+ dimensions:
+ - name: nodes
+ - name: mysql.galera_cluster_weight
+ description: The Total Weight of the Current Members in the Cluster
+ unit: weight
+ chart_type: line
+ dimensions:
+ - name: weight
+ - name: mysql.galera_connected
+ description: Cluster Connection Status
+ unit: boolean
+ chart_type: line
+ dimensions:
+ - name: connected
+ - name: mysql.galera_ready
+ description: Accept Queries Readiness Status
+ unit: boolean
+ chart_type: line
+ dimensions:
+ - name: ready
+ - name: mysql.galera_open_transactions
+ description: Open Transactions
+ unit: transactions
+ chart_type: line
+ dimensions:
+ - name: open
+ - name: mysql.galera_thread_count
+ description: Total Number of WSRep (applier/rollbacker) Threads
+ unit: threads
+ chart_type: line
+ dimensions:
+ - name: threads
+ - name: mysql.key_blocks
+ description: MyISAM Key Cache Blocks
+ unit: blocks
+ chart_type: line
+ dimensions:
+ - name: unused
+ - name: used
+ - name: not_flushed
+ - name: mysql.key_requests
+ description: MyISAM Key Cache Requests
+ unit: requests/s
+ chart_type: area
+ dimensions:
+ - name: reads
+ - name: writes
+ - name: mysql.key_disk_ops
+ description: MyISAM Key Cache Disk Operations
+ unit: operations/s
+ chart_type: area
+ dimensions:
+ - name: reads
+ - name: writes
+ - name: mysql.binlog_cache
+ description: Binlog Cache
+ unit: transactions/s
+ chart_type: line
+ dimensions:
+ - name: disk
+ - name: all
+ - name: mysql.binlog_stmt_cache
+ description: Binlog Statement Cache
+ unit: statements/s
+ chart_type: line
+ dimensions:
+ - name: disk
+ - name: all
+ - name: connection
+ description: These metrics refer to the replication connection.
+ labels: []
+ metrics:
+ - name: mysql.slave_behind
+ description: Slave Behind Seconds
+ unit: seconds
+ chart_type: line
+ dimensions:
+ - name: seconds
+ - name: mysql.slave_status
+ description: I/O / SQL Thread Running State
+ unit: boolean
+ chart_type: line
+ dimensions:
+ - name: sql_running
+ - name: io_running
+ - name: user
+ description: These metrics refer to the MySQL user.
+ labels:
+ - name: user
+ description: username
+ metrics:
+ - name: mysql.userstats_cpu
+ description: User CPU Time
+ unit: percentage
+ chart_type: line
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: used
+ - name: mysql.userstats_rows
+ description: User Rows Operations
+ unit: operations/s
+ chart_type: stacked
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: read
+ - name: sent
+ - name: updated
+ - name: inserted
+ - name: deleted
+ - name: mysql.userstats_commands
+ description: User Commands
+ unit: commands/s
+ chart_type: stacked
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: select
+ - name: update
+ - name: other
+ - name: mysql.userstats_denied_commands
+ description: User Denied Commands
+ unit: commands/s
+ chart_type: stacked
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: denied
+ - name: mysql.userstats_created_transactions
+ description: User Transactions
+ unit: transactions/s
+ chart_type: area
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: commit
+ - name: rollback
+ - name: mysql.userstats_binlog_written
+ description: User Binlog Written
+ unit: B/s
+ chart_type: line
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: written
+ - name: mysql.userstats_empty_queries
+ description: User Empty Queries
+ unit: queries/s
+ chart_type: line
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: empty
+ - name: mysql.userstats_connections
+ description: User Created Connections
+ unit: connections/s
+ chart_type: line
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: created
+ - name: mysql.userstats_lost_connections
+ description: User Lost Connections
+ unit: connections/s
+ chart_type: line
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: lost
+ - name: mysql.userstats_denied_connections
+ description: User Denied Connections
+ unit: connections/s
+ chart_type: line
+ availability:
+ - MariaDB
+ - Percona
+ dimensions:
+ - name: denied
+ - <<: *module
+ meta:
+ <<: *meta
+ id: collector-go.d.plugin-mariadb
+ monitored_instance:
+ name: MariaDB
+ link: https://mariadb.org/
+ icon_filename: mariadb.svg
+ categories:
+ - data-collection.database-servers
+ - <<: *module
+ meta:
+ <<: *meta
+ id: collector-go.d.plugin-percona_mysql
+ most_popular: false
+ monitored_instance:
+ name: Percona MySQL
+ link: https://www.percona.com/software/mysql-database/percona-server
+ icon_filename: percona.svg
+ categories:
+ - data-collection.database-servers