{ "zabbix_export": { "version": "6.0", "date": "2024-08-19T14:48:54Z", "groups": [ { "uuid": "748ad4d098d447d492bb935c907f652f", "name": "Templates/Databases" } ], "templates": [ { "uuid": "f255e3fc32124b55b2a17ef3c961e5f5", "template": "MySQL by Zabbix agent", "name": "MySQL by Zabbix agent", "description": "Requirements for template operation:\n\n1. Install Zabbix agent and MySQL client. If necessary, add the path to the 'mysql' and 'mysqladmin' utilities to the global environment variable PATH.\n\n2. Copy the 'template_db_mysql.conf' file with user parameters into folder with Zabbix agent configuration (/etc/zabbix/zabbix_agentd.d/ by default). Don't forget to restart Zabbix agent.\n\n3. Create the MySQL user that will be used for monitoring ('<password>' at your discretion). For example:\n\nCREATE USER 'zbx_monitor'@'%' IDENTIFIED BY '<password>';\nGRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbx_monitor'@'%';\n\nFor more information, please see MySQL documentation (https://dev.mysql.com/doc/refman/8.0/en/grant.html).\n\n4. Create '.my.cnf' configuration file in the home directory of Zabbix agent for Linux distributions (/var/lib/zabbix by default) or 'my.cnf' in c:\\ for Windows. For example:\n\n[client]\nprotocol=tcp\nuser='zbx_monitor'\npassword='<password>'\n\nFor more information, please see MySQL documentation (https://dev.mysql.com/doc/refman/8.0/en/option-files.html).\n\nNOTE: Linux distributions that use SELinux may require additional steps for access configuration.\n\nYou can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/384189-discussion-thread-for-official-zabbix-template-db-mysql\n\nGenerated by official Zabbix template tool \"Templator\"", "groups": [ { "name": "Templates/Databases" } ], "items": [ { "uuid": "b463e01655bf4dec81d5208f7a75766b", "name": "MySQL: Aborted clients per second", "type": "DEPENDENT", "key": "mysql.aborted_clients.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of connections that were aborted because the client died without closing the connection properly.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Aborted_clients']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ] }, { "uuid": "d33a03e48f6d45dca04a505bab07a860", "name": "MySQL: Aborted connections per second", "type": "DEPENDENT", "key": "mysql.aborted_connects.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of failed attempts to connect to the MySQL server.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Aborted_connects']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ], "triggers": [ { "uuid": "e51c9ee3061c4e3889be1666afe6959d", "expression": "min(/MySQL by Zabbix agent/mysql.aborted_connects.rate,5m)>{$MYSQL.ABORTED_CONN.MAX.WARN}", "name": "MySQL: Server has aborted connections", "event_name": "MySQL: Server has aborted connections (over {$MYSQL.ABORTED_CONN.MAX.WARN} for 5m)", "priority": "AVERAGE", "description": "The number of failed attempts to connect to the MySQL server is more than `{$MYSQL.ABORTED_CONN.MAX.WARN}` in the last 5 minutes.", "dependencies": [ { "name": "MySQL: Refused connections", "expression": "last(/MySQL by Zabbix agent/mysql.connection_errors_max_connections.rate)>0" } ], "tags": [ { "tag": "scope", "value": "availability" } ] } ] }, { "uuid": "75b9c78d76334927a3fc2a4d1322ecc2", "name": "MySQL: Binlog cache disk use", "type": "DEPENDENT", "key": "mysql.binlog_cache_disk_use", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of transactions that used a temporary disk cache because they could not fit in the regular binary log cache, being larger than `binlog_cache_size`.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Binlog_cache_disk_use']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "cache" } ] }, { "uuid": "9a447424aca84124abdfa389865126d4", "name": "MySQL: Buffer pool efficiency", "type": "CALCULATED", "key": "mysql.buffer_pool_efficiency", "history": "7d", "value_type": "FLOAT", "units": "%", "params": "last(//mysql.innodb_buffer_pool_reads) / \n( last(//mysql.innodb_buffer_pool_read_requests) + \n( last(//mysql.innodb_buffer_pool_read_requests) = 0 ) ) * 100 * \n( last(//mysql.innodb_buffer_pool_read_requests) > 0 )", "description": "The item shows how effectively the buffer pool is serving reads.", "tags": [ { "tag": "component", "value": "memory" } ] }, { "uuid": "9aca02e86e744f43ab48e8ca9453cf77", "name": "MySQL: Buffer pool utilization", "type": "CALCULATED", "key": "mysql.buffer_pool_utilization", "history": "7d", "value_type": "FLOAT", "units": "%", "params": "( last(//mysql.innodb_buffer_pool_pages_total) - \nlast(//mysql.innodb_buffer_pool_pages_free) ) / \n( last(//mysql.innodb_buffer_pool_pages_total) + \n( last(//mysql.innodb_buffer_pool_pages_total) = 0 ) ) * 100 * \n( last(//mysql.innodb_buffer_pool_pages_total) > 0 )", "description": "Ratio of used to total pages in the buffer pool.", "tags": [ { "tag": "component", "value": "memory" } ], "triggers": [ { "uuid": "0e8ea91d72a64507aaadf9ea5efa6412", "expression": "max(/MySQL by Zabbix agent/mysql.buffer_pool_utilization,5m)<{$MYSQL.BUFF_UTIL.MIN.WARN}", "name": "MySQL: Buffer pool utilization is too low", "event_name": "MySQL: Buffer pool utilization is too low (less than {$MYSQL.BUFF_UTIL.MIN.WARN}% for 5m)", "priority": "WARNING", "description": "The buffer pool utilization is less than `{$MYSQL.BUFF_UTIL.MIN.WARN}`% in the last 5 minutes. This means that there is a lot of unused RAM allocated for the buffer pool, which you can easily reallocate at the moment.", "tags": [ { "tag": "scope", "value": "notice" } ] } ] }, { "uuid": "56512a1e89d34826ad261ab27119e80d", "name": "MySQL: Bytes received", "type": "DEPENDENT", "key": "mysql.bytes_received.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "units": "Bps", "description": "Number of bytes received from all clients.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Bytes_received']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "network" } ] }, { "uuid": "c4cea16e3dbe4d328d9a50e113f3b904", "name": "MySQL: Bytes sent", "type": "DEPENDENT", "key": "mysql.bytes_sent.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "units": "Bps", "description": "Number of bytes sent to all clients.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Bytes_sent']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "network" } ] }, { "uuid": "24ab8f0bd32a45f591c676ef839876df", "name": "MySQL: Command Delete per second", "type": "DEPENDENT", "key": "mysql.com_delete.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "The `Com_delete` counter variable indicates the number of times the `DELETE` statement has been executed.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Com_delete']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "operations" } ] }, { "uuid": "e48c67c893e5494fb00ea31222bd2caf", "name": "MySQL: Command Insert per second", "type": "DEPENDENT", "key": "mysql.com_insert.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "The `Com_insert` counter variable indicates the number of times the `INSERT` statement has been executed.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Com_insert']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "operations" } ] }, { "uuid": "718c3af61f2645e8ab7d3496d6639c79", "name": "MySQL: Command Select per second", "type": "DEPENDENT", "key": "mysql.com_select.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "The `Com_select` counter variable indicates the number of times the `SELECT` statement has been executed.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Com_select']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "operations" } ] }, { "uuid": "e2c3ea26dd34472c9e5f0e48a67da6dd", "name": "MySQL: Command Update per second", "type": "DEPENDENT", "key": "mysql.com_update.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "The `Com_update` counter variable indicates the number of times the `UPDATE` statement has been executed.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Com_update']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "operations" } ] }, { "uuid": "bcf8a21aacc54a79a958604b278f9617", "name": "MySQL: Connections per second", "type": "DEPENDENT", "key": "mysql.connections.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of connection attempts (successful or not) to the MySQL server.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Connections']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ] }, { "uuid": "dc963a1250ab453cb090af0154d745c3", "name": "MySQL: Connection errors accept per second", "type": "DEPENDENT", "key": "mysql.connection_errors_accept.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of errors that occurred during calls to `accept()` on the listening port.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Connection_errors_accept']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ] }, { "uuid": "4cff4caf382f4f00b534651212132bd2", "name": "MySQL: Connection errors internal per second", "type": "DEPENDENT", "key": "mysql.connection_errors_internal.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of refused connections due to internal server errors, for example, out of memory errors, or failed thread starts.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Connection_errors_internal']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ] }, { "uuid": "3cbc55fc7b764a61baceb11e98fd454c", "name": "MySQL: Connection errors max connections per second", "type": "DEPENDENT", "key": "mysql.connection_errors_max_connections.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of refused connections due to the `max_connections` limit being reached.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Connection_errors_max_connections']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ], "triggers": [ { "uuid": "2ff2d0f399df4cb08b7196d3a4690567", "expression": "last(/MySQL by Zabbix agent/mysql.connection_errors_max_connections.rate)>0", "name": "MySQL: Refused connections", "event_name": "MySQL: Refused connections (max_connections limit reached)", "priority": "AVERAGE", "description": "Number of refused connections due to the `max_connections` limit being reached.", "tags": [ { "tag": "scope", "value": "availability" } ] } ] }, { "uuid": "e577b4b6c553401bbb831b7278dbbcb7", "name": "MySQL: Connection errors peer address per second", "type": "DEPENDENT", "key": "mysql.connection_errors_peer_address.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of errors while searching for the connecting client's IP address.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Connection_errors_peer_address']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ] }, { "uuid": "228aaf5333ce4958aa3a07e0898add63", "name": "MySQL: Connection errors select per second", "type": "DEPENDENT", "key": "mysql.connection_errors_select.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of errors during calls to `select()` or `poll()` on the listening port. The client would not necessarily have been rejected in these cases.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Connection_errors_select']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ] }, { "uuid": "a7632124b2b648bfa80a2e8a0381f4d2", "name": "MySQL: Connection errors tcpwrap per second", "type": "DEPENDENT", "key": "mysql.connection_errors_tcpwrap.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of connections the libwrap library has refused.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Connection_errors_tcpwrap']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ] }, { "uuid": "52335a039571454ebaccc9ab103200a3", "name": "MySQL: Created tmp tables on disk per second", "type": "DEPENDENT", "key": "mysql.created_tmp_disk_tables.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of internal on-disk temporary tables created by the server while executing statements.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Created_tmp_disk_tables']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "storage" }, { "tag": "component", "value": "tables" } ], "triggers": [ { "uuid": "1b8761292e89476e91834f8e567a1dbe", "expression": "min(/MySQL by Zabbix agent/mysql.created_tmp_disk_tables.rate,5m)>{$MYSQL.CREATED_TMP_DISK_TABLES.MAX.WARN}", "name": "MySQL: Number of on-disk temporary tables created per second is high", "event_name": "MySQL: Number of on-disk temporary tables created per second is high (over {$MYSQL.CREATED_TMP_DISK_TABLES.MAX.WARN} for 5m)", "priority": "WARNING", "description": "The application using the database may be in need of query optimization.", "tags": [ { "tag": "scope", "value": "performance" } ] } ] }, { "uuid": "d1dd183666d44010a5054f2e1cc328de", "name": "MySQL: Created tmp files on disk per second", "type": "DEPENDENT", "key": "mysql.created_tmp_files.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "How many temporary files `mysqld` has created.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Created_tmp_files']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "storage" } ], "triggers": [ { "uuid": "9845d8dc676f4702ae34b626f39d21ac", "expression": "min(/MySQL by Zabbix agent/mysql.created_tmp_files.rate,5m)>{$MYSQL.CREATED_TMP_FILES.MAX.WARN}", "name": "MySQL: Number of temporary files created per second is high", "event_name": "MySQL: Number of temporary files created per second is high (over {$MYSQL.CREATED_TMP_FILES.MAX.WARN} for 5m)", "priority": "WARNING", "description": "The application using the database may be in need of query optimization.", "tags": [ { "tag": "scope", "value": "performance" } ] } ] }, { "uuid": "c9a94c3145a643ef8ceec33f63b85ae9", "name": "MySQL: Created tmp tables on memory per second", "type": "DEPENDENT", "key": "mysql.created_tmp_tables.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of internal temporary tables created by the server while executing statements.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Created_tmp_tables']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "memory" }, { "tag": "component", "value": "tables" } ], "triggers": [ { "uuid": "c647a51864e04bc69a1f610b1dec56fe", "expression": "min(/MySQL by Zabbix agent/mysql.created_tmp_tables.rate,5m)>{$MYSQL.CREATED_TMP_TABLES.MAX.WARN}", "name": "MySQL: Number of internal temporary tables created per second is high", "event_name": "MySQL: Number of internal temporary tables created per second is high (over {$MYSQL.CREATED_TMP_TABLES.MAX.WARN} for 5m)", "priority": "WARNING", "description": "The application using the database may be in need of query optimization.", "tags": [ { "tag": "scope", "value": "performance" } ] } ] }, { "uuid": "2ba81b425bde4ba5b3f7d00a6c922ed9", "name": "MySQL: Get status variables", "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]", "history": "0", "trends": "0", "value_type": "TEXT", "description": "Gets server global status information.", "tags": [ { "tag": "component", "value": "raw" } ] }, { "uuid": "a9b965a07b504fa1b4e90acae0156221", "name": "MySQL: InnoDB buffer pool pages free", "type": "DEPENDENT", "key": "mysql.innodb_buffer_pool_pages_free", "delay": "0", "history": "7d", "description": "The total size of the InnoDB buffer pool, in pages.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_buffer_pool_pages_free']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "memory" } ] }, { "uuid": "efb2450fe30c4ec78b954a35595b7ac7", "name": "MySQL: InnoDB buffer pool pages total", "type": "DEPENDENT", "key": "mysql.innodb_buffer_pool_pages_total", "delay": "0", "history": "7d", "description": "The total size of the InnoDB buffer pool, in pages.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_buffer_pool_pages_total']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "memory" } ] }, { "uuid": "7738a4480f69427a96d46a9ca5b38d77", "name": "MySQL: InnoDB buffer pool reads", "type": "DEPENDENT", "key": "mysql.innodb_buffer_pool_reads", "delay": "0", "history": "7d", "description": "Number of logical reads that InnoDB could not satisfy from the buffer pool and had to read directly from the disk.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_buffer_pool_reads']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "memory" } ] }, { "uuid": "1704fe0bf8de4882a6a16ebd75c4c3bf", "name": "MySQL: InnoDB buffer pool reads per second", "type": "DEPENDENT", "key": "mysql.innodb_buffer_pool_reads.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of logical reads per second that InnoDB could not satisfy from the buffer pool and had to read directly from the disk.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_buffer_pool_reads']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "memory" } ] }, { "uuid": "598dcdb7eeec42c78484be70c814cd8a", "name": "MySQL: InnoDB buffer pool read requests", "type": "DEPENDENT", "key": "mysql.innodb_buffer_pool_read_requests", "delay": "0", "history": "7d", "description": "Number of logical read requests.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_buffer_pool_read_requests']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "memory" } ] }, { "uuid": "3ed432f4e0c949debaed9d60c5d13810", "name": "MySQL: InnoDB buffer pool read requests per second", "type": "DEPENDENT", "key": "mysql.innodb_buffer_pool_read_requests.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of logical read requests per second.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_buffer_pool_read_requests']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "memory" } ] }, { "uuid": "61db0feae0b440c087177f4312eb6b7a", "name": "MySQL: Innodb buffer pool wait free", "type": "DEPENDENT", "key": "mysql.innodb_buffer_pool_wait_free", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of times InnoDB waited for a free page before reading or creating a page. Normally, writes to the InnoDB buffer pool happen in the background. When no clean pages are available, dirty pages are flushed first in order to free some up. This counts the numbers of wait for this operation to finish. If this value is not small, look at the increasing `innodb_buffer_pool_size`.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_buffer_pool_wait_free']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "memory" } ] }, { "uuid": "e5413d85449e4baea683c6365808cc17", "name": "MySQL: Calculated value of innodb_log_file_size", "type": "CALCULATED", "key": "mysql.innodb_log_file_size", "history": "7d", "value_type": "FLOAT", "params": "(last(//mysql.innodb_os_log_written) - last(//mysql.innodb_os_log_written,#1:now-1h)) / {$MYSQL.INNODB_LOG_FILES}", "description": "`Innodb_log_file_size` is calculated as: (`innodb_os_log_written`-`innodb_os_log_written`(time shift -1h))/`{$MYSQL.INNODB_LOG_FILES}`. `Innodb_log_file_size` is the size in bytes of the each InnoDB redo log file in the log group. The combined size can be no more than 512 GB. Larger values mean less disk I/O due to less flushing checkpoint activity, but also slower recovery from a crash.", "preprocessing": [ { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "tags": [ { "tag": "component", "value": "system" } ] }, { "uuid": "2eacd8c07f7148acaaa9b8f8602720ae", "name": "MySQL: Innodb number open files", "type": "DEPENDENT", "key": "mysql.innodb_num_open_files", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of open files held by InnoDB. InnoDB only.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_num_open_files']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "system" } ] }, { "uuid": "29d3513668ad4bdea28d947d2f983dd2", "name": "MySQL: Innodb log written", "type": "DEPENDENT", "key": "mysql.innodb_os_log_written", "delay": "0", "history": "7d", "value_type": "FLOAT", "units": "B", "description": "Number of bytes written to the InnoDB log.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_os_log_written']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "system" } ] }, { "uuid": "3811018fdfaf4d92a5b8ff5d631d0047", "name": "MySQL: InnoDB row lock time", "type": "DEPENDENT", "key": "mysql.innodb_row_lock_time", "delay": "0", "history": "7d", "value_type": "FLOAT", "units": "s", "description": "The total time spent in acquiring row locks for InnoDB tables, in milliseconds.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_row_lock_time']/field[@name='Value']/text()" ] }, { "type": "MULTIPLIER", "parameters": [ "0.001" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "tables" } ] }, { "uuid": "579c1ad7680349a3b6a25dd12322fc14", "name": "MySQL: InnoDB row lock time max", "type": "DEPENDENT", "key": "mysql.innodb_row_lock_time_max", "delay": "0", "history": "7d", "value_type": "FLOAT", "units": "s", "description": "The maximum time to acquire a row lock for InnoDB tables, in milliseconds.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_row_lock_time_max']/field[@name='Value']/text()" ] }, { "type": "MULTIPLIER", "parameters": [ "0.001" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "tables" } ] }, { "uuid": "a4618dd9ed1d4ff19f34bc82f41dbbbb", "name": "MySQL: InnoDB row lock waits", "type": "DEPENDENT", "key": "mysql.innodb_row_lock_waits", "delay": "0", "history": "7d", "description": "Number of times operations on InnoDB tables had to wait for a row lock.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Innodb_row_lock_waits']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "innodb" }, { "tag": "component", "value": "tables" } ] }, { "uuid": "e207dc3c0fe84928a36e643594d8cee5", "name": "MySQL: Max used connections", "type": "DEPENDENT", "key": "mysql.max_used_connections", "delay": "0", "history": "7d", "description": "The maximum number of connections that have been in use simultaneously since the server start.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Max_used_connections']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "connections" } ] }, { "uuid": "3dd5ffb7c1cc45a487c5c7cabfa90ca6", "name": "MySQL: Open tables", "type": "DEPENDENT", "key": "mysql.open_tables", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of tables that are open.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Open_tables']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "tables" } ] }, { "uuid": "fe572969a6754248b10a35a5c0afedf3", "name": "MySQL: Open table definitions", "type": "DEPENDENT", "key": "mysql.open_table_definitions", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of cached table definitions.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Open_table_definitions']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "tables" } ] }, { "uuid": "41cd6c8c535948f3bde6324e0912f1a8", "name": "MySQL: Status", "key": "mysql.ping[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]", "history": "7d", "description": "MySQL server status.", "valuemap": { "name": "Service state" }, "preprocessing": [ { "type": "JAVASCRIPT", "parameters": [ "return value.indexOf('is alive') !== -1 ? 1 : 0;" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "10m" ] } ], "tags": [ { "tag": "component", "value": "application" }, { "tag": "component", "value": "health" } ], "triggers": [ { "uuid": "e78f07e3e507461f8fe33a31b1bc4eb9", "expression": "last(/MySQL by Zabbix agent/mysql.ping[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"])=0", "name": "MySQL: Service is down", "priority": "HIGH", "description": "MySQL is down.", "tags": [ { "tag": "scope", "value": "availability" } ] } ] }, { "uuid": "c11b8c8ec3e843cea63f6cc1d8309ccd", "name": "MySQL: Queries per second", "type": "DEPENDENT", "key": "mysql.queries.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of statements executed by the server. This variable includes statements executed within stored programs, unlike the `Questions` variable.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Queries']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "queries" } ] }, { "uuid": "cd7c5c4e262f4a73975d46d06ed903f9", "name": "MySQL: Questions per second", "type": "DEPENDENT", "key": "mysql.questions.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of statements executed by the server. This includes only statements sent to the server by clients and not statements executed within stored programs, unlike the `Queries` variable.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Questions']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "queries" } ] }, { "uuid": "a1cfc616f23648e9946f408c7146df0a", "name": "MySQL: Slow queries per second", "type": "DEPENDENT", "key": "mysql.slow_queries.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of queries that have taken more than `long_query_time` seconds.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Slow_queries']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "queries" } ], "triggers": [ { "uuid": "113509b7a7b54a108c1c63346a52bbf2", "expression": "min(/MySQL by Zabbix agent/mysql.slow_queries.rate,5m)>{$MYSQL.SLOW_QUERIES.MAX.WARN}", "name": "MySQL: Server has slow queries", "event_name": "MySQL: Server has slow queries (over {$MYSQL.SLOW_QUERIES.MAX.WARN} for 5m)", "priority": "WARNING", "description": "The number of slow queries is more than `{$MYSQL.SLOW_QUERIES.MAX.WARN}` in the last 5 minutes.", "tags": [ { "tag": "scope", "value": "performance" } ] } ] }, { "uuid": "a9ce1d75a97d4740876fad7b5d569211", "name": "MySQL: Threads cached", "type": "DEPENDENT", "key": "mysql.threads_cached", "delay": "0", "history": "7d", "description": "Number of threads in the thread cache.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Threads_cached']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "threads" } ] }, { "uuid": "a0079f5ffbdc40cc89b35a8b6170c32b", "name": "MySQL: Threads connected", "type": "DEPENDENT", "key": "mysql.threads_connected", "delay": "0", "history": "7d", "description": "Number of currently open connections.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Threads_connected']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "threads" } ] }, { "uuid": "06976fcb42ab4a33b0056a864ecd31e7", "name": "MySQL: Threads created per second", "type": "DEPENDENT", "key": "mysql.threads_created.rate", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of threads created to handle connections. If the value of `Threads_created` is large, you may want to increase the `thread_cache_size` value. The cache miss rate can be calculated as `Threads_created`/`Connections`.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Threads_created']/field[@name='Value']/text()" ] }, { "type": "CHANGE_PER_SECOND", "parameters": [ "" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "threads" } ] }, { "uuid": "255c00a984ba462e84ba46a7430f21c9", "name": "MySQL: Threads running", "type": "DEPENDENT", "key": "mysql.threads_running", "delay": "0", "history": "7d", "description": "Number of threads that are not sleeping.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Threads_running']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "threads" } ] }, { "uuid": "6ffa704603014f0f9f765590955fb01c", "name": "MySQL: Uptime", "type": "DEPENDENT", "key": "mysql.uptime", "delay": "0", "history": "7d", "units": "uptime", "description": "Number of seconds that the server has been up.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Uptime']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "application" } ], "triggers": [ { "uuid": "d3c80c770355464fb5a6be0357d0edca", "expression": "nodata(/MySQL by Zabbix agent/mysql.uptime,30m)=1", "name": "MySQL: Failed to fetch info data", "event_name": "MySQL: Failed to fetch info data (or no data for 30m)", "priority": "INFO", "description": "Zabbix has not received any data for items for the last 30 minutes.", "dependencies": [ { "name": "MySQL: Service is down", "expression": "last(/MySQL by Zabbix agent/mysql.ping[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"])=0" } ], "tags": [ { "tag": "scope", "value": "availability" } ] }, { "uuid": "f02f51c764934cf394c5ad3f9c4e70d2", "expression": "last(/MySQL by Zabbix agent/mysql.uptime)<10m", "name": "MySQL: Service has been restarted", "event_name": "MySQL: Service has been restarted (uptime < 10m)", "priority": "INFO", "description": "MySQL uptime is less than 10 minutes.", "tags": [ { "tag": "scope", "value": "notice" } ] } ] }, { "uuid": "a5d0f152c3ef4e069c3d5a6a5a9470fe", "name": "MySQL: Version", "key": "mysql.version[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]", "delay": "15m", "history": "7d", "trends": "0", "value_type": "CHAR", "description": "MySQL server version.", "preprocessing": [ { "type": "REGEX", "parameters": [ "(Server version)\\s+(.+)", "\\2" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1d" ] } ], "tags": [ { "tag": "component", "value": "application" } ], "triggers": [ { "uuid": "7eab3a7337904ad1b2061d209371543b", "expression": "last(/MySQL by Zabbix agent/mysql.version[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"],#1)<>last(/MySQL by Zabbix agent/mysql.version[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"],#2) and length(last(/MySQL by Zabbix agent/mysql.version[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]))>0", "name": "MySQL: Version has changed", "event_name": "MySQL: Version has changed (new version value received: {ITEM.VALUE})", "priority": "INFO", "description": "The MySQL version has changed. Acknowledge to close the problem manually.", "manual_close": "YES", "tags": [ { "tag": "scope", "value": "notice" } ] } ] } ], "discovery_rules": [ { "uuid": "8ceb226f000d48f099ee6e128ad551b5", "name": "Database discovery", "key": "mysql.db.discovery[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]", "delay": "1h", "filter": { "evaltype": "AND", "conditions": [ { "macro": "{#DBNAME}", "value": "{$MYSQL.DBNAME.MATCHES}", "formulaid": "A" }, { "macro": "{#DBNAME}", "value": "{$MYSQL.DBNAME.NOT_MATCHES}", "operator": "NOT_MATCHES_REGEX", "formulaid": "B" } ] }, "description": "Scanning databases in DBMS.", "item_prototypes": [ { "uuid": "dda45077011d4f8fa5c25b1f351179ca", "name": "MySQL: Size of database {#DBNAME}", "key": "mysql.dbsize[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\",\"{#DBNAME}\"]", "delay": "5m", "history": "7d", "units": "B", "description": "Database size.", "preprocessing": [ { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1h" ] } ], "tags": [ { "tag": "component", "value": "storage" }, { "tag": "database", "value": "{#DBNAME}" } ] } ], "preprocessing": [ { "type": "JAVASCRIPT", "parameters": [ "return JSON.stringify(value.split(\"\\n\").map(function (name) {\n return ({\"{#DBNAME}\": name});\n}));" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1d" ] } ] }, { "uuid": "bc28468760e14d069ef7b47858846a50", "name": "MariaDB discovery", "type": "DEPENDENT", "key": "mysql.extra_metric.discovery", "delay": "0", "description": "Used for additional metrics if MariaDB is used.", "item_prototypes": [ { "uuid": "7743cdbaf71c491189ac1a927409e998", "name": "MySQL: Binlog commits", "type": "DEPENDENT", "key": "mysql.binlog_commits[{#SINGLETON}]", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Total number of transactions committed to the binary log.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Binlog_commits']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "transactions" } ] }, { "uuid": "c897f8f0fb1c4e409dd95305fd221e01", "name": "MySQL: Binlog group commits", "type": "DEPENDENT", "key": "mysql.binlog_group_commits[{#SINGLETON}]", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Total number of group commits done to the binary log.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Binlog_group_commits']/field[@name='Value']/text()" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "transactions" } ] }, { "uuid": "749e72ebd1014f7faee352e23ac3dfdd", "name": "MySQL: Master GTID wait count", "type": "DEPENDENT", "key": "mysql.master_gtid_wait_count[{#SINGLETON}]", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "The number of times `MASTER_GTID_WAIT` called.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Master_gtid_wait_count']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "transactions" } ] }, { "uuid": "4a4537b0db5b43119af910d0ba421035", "name": "MySQL: Master GTID wait timeouts", "type": "DEPENDENT", "key": "mysql.master_gtid_wait_timeouts[{#SINGLETON}]", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Number of timeouts occurring in `MASTER_GTID_WAIT`.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Master_gtid_wait_timeouts']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "transactions" } ] }, { "uuid": "c1e95abc88cf486a9226bf760254f797", "name": "MySQL: Master GTID wait time", "type": "DEPENDENT", "key": "mysql.master_gtid_wait_time[{#SINGLETON}]", "delay": "0", "history": "7d", "value_type": "FLOAT", "description": "Total number of time spent in `MASTER_GTID_WAIT`.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Master_gtid_wait_time']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.get_status_variables[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "tags": [ { "tag": "component", "value": "transactions" } ] } ], "master_item": { "key": "mysql.version[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]" }, "preprocessing": [ { "type": "JAVASCRIPT", "parameters": [ "return JSON.stringify(value.search('MariaDB')>-1 ? [{'{#SINGLETON}': ''}] : []);" ] } ] }, { "uuid": "aed60b7ae3794d0ba25ad82da12b8966", "name": "Replication discovery", "key": "mysql.replication.discovery[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\"]", "delay": "1h", "description": "If \"show slave status\" returns Master_Host, \"Replication: *\" items are created.", "item_prototypes": [ { "uuid": "48555d71074f4cd4a61dca6187c8b29a", "name": "MySQL: Replication Seconds Behind Master {#MASTER_HOST}", "type": "DEPENDENT", "key": "mysql.seconds_behind_master[\"{#MASTER_HOST}\"]", "delay": "0", "history": "7d", "units": "s", "description": "The number of seconds that the slave SQL thread is behind processing the master binary log.\nA high number (or an increasing one) can indicate that the slave is unable to handle events\nfrom the master in a timely fashion.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row/field[@name='Seconds_Behind_Master']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1h" ] }, { "type": "NOT_MATCHES_REGEX", "parameters": [ "null" ], "error_handler": "CUSTOM_ERROR", "error_handler_params": "Replication is not performed." } ], "master_item": { "key": "mysql.slave_status[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\",\"{#MASTER_HOST}\"]" }, "tags": [ { "tag": "component", "value": "replication" } ], "trigger_prototypes": [ { "uuid": "a5c91da088414d279f5ea3cd59093ce9", "expression": "min(/MySQL by Zabbix agent/mysql.seconds_behind_master[\"{#MASTER_HOST}\"],5m)>{$MYSQL.REPL_LAG.MAX.WARN}", "name": "MySQL: Replication lag is too high", "event_name": "MySQL: Replication lag is too high (over {$MYSQL.REPL_LAG.MAX.WARN} for 5m)", "priority": "WARNING", "description": "Replication delay is too long.", "tags": [ { "tag": "scope", "value": "notice" } ] } ] }, { "uuid": "1c075f4785604d92a33a868e213070d8", "name": "MySQL: Replication Slave IO Running {#MASTER_HOST}", "type": "DEPENDENT", "key": "mysql.slave_io_running[\"{#MASTER_HOST}\"]", "delay": "0", "history": "7d", "trends": "0", "value_type": "CHAR", "description": "Whether the I/O thread for reading the master's binary log is running.\nNormally, you want this to be Yes unless you have not yet started replication or have\nexplicitly stopped it with STOP SLAVE.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row/field[@name='Slave_IO_Running']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1h" ] } ], "master_item": { "key": "mysql.slave_status[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\",\"{#MASTER_HOST}\"]" }, "tags": [ { "tag": "component", "value": "replication" } ], "trigger_prototypes": [ { "uuid": "8ee45932311443cb906306b1d2c99b19", "expression": "count(/MySQL by Zabbix agent/mysql.slave_io_running[\"{#MASTER_HOST}\"],#1,\"ne\",\"Yes\")=1", "name": "MySQL: The slave I/O thread is not connected to a replication master", "priority": "WARNING", "description": "Whether the slave I/O thread is connected to the master.", "dependencies": [ { "name": "MySQL: The slave I/O thread is not running", "expression": "count(/MySQL by Zabbix agent/mysql.slave_io_running[\"{#MASTER_HOST}\"],#1,\"eq\",\"No\")=1" } ], "tags": [ { "tag": "scope", "value": "availability" } ] }, { "uuid": "4c8ca45f26254d9a9a1c9248f1fa1537", "expression": "count(/MySQL by Zabbix agent/mysql.slave_io_running[\"{#MASTER_HOST}\"],#1,\"eq\",\"No\")=1", "name": "MySQL: The slave I/O thread is not running", "priority": "AVERAGE", "description": "Whether the I/O thread for reading the master's binary log is running.", "tags": [ { "tag": "scope", "value": "notice" } ] } ] }, { "uuid": "967c6fd13cc04562a9fea174bd90b8c4", "name": "MySQL: Replication Slave SQL Running {#MASTER_HOST}", "type": "DEPENDENT", "key": "mysql.slave_sql_running[\"{#MASTER_HOST}\"]", "delay": "0", "history": "7d", "trends": "0", "value_type": "CHAR", "description": "Whether the SQL thread for executing events in the relay log is running.\nAs with the I/O thread, this should normally be Yes.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row/field[@name='Slave_SQL_Running']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1h" ] } ], "master_item": { "key": "mysql.slave_status[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\",\"{#MASTER_HOST}\"]" }, "tags": [ { "tag": "component", "value": "replication" } ], "trigger_prototypes": [ { "uuid": "bd0d20c05e3b46b6a7c341e5d122208b", "expression": "count(/MySQL by Zabbix agent/mysql.slave_sql_running[\"{#MASTER_HOST}\"],#1,\"eq\",\"No\")=1", "name": "MySQL: The SQL thread is not running", "priority": "WARNING", "description": "Whether the SQL thread for executing events in the relay log is running.", "dependencies": [ { "name": "MySQL: The slave I/O thread is not running", "expression": "count(/MySQL by Zabbix agent/mysql.slave_io_running[\"{#MASTER_HOST}\"],#1,\"eq\",\"No\")=1" } ], "tags": [ { "tag": "scope", "value": "notice" } ] } ] }, { "uuid": "27e807d840d4474484c2e1f896726b6b", "name": "MySQL: Replication Slave SQL Running State {#MASTER_HOST}", "type": "DEPENDENT", "key": "mysql.slave_sql_running_state[\"{#MASTER_HOST}\"]", "delay": "0", "history": "7d", "trends": "0", "value_type": "TEXT", "description": "This shows the state of the SQL driver threads.", "preprocessing": [ { "type": "XMLPATH", "parameters": [ "/resultset/row[field/text()='Slave_SQL_Running_State']/field[@name='Value']/text()" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "6h" ] } ], "master_item": { "key": "mysql.slave_status[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\",\"{#MASTER_HOST}\"]" }, "tags": [ { "tag": "component", "value": "replication" } ] }, { "uuid": "d87c7c03e5884a43912f60ad91c3b46f", "name": "MySQL: Replication Slave status {#MASTER_HOST}", "key": "mysql.slave_status[\"{$MYSQL.HOST}\",\"{$MYSQL.PORT}\",\"{#MASTER_HOST}\"]", "history": "0", "trends": "0", "value_type": "TEXT", "description": "The item gets status information on the essential parameters of the slave threads.", "tags": [ { "tag": "component", "value": "raw" } ] } ], "preprocessing": [ { "type": "JAVASCRIPT", "parameters": [ "var matches = value.match(/Master_Host.*>(.*)<.*/);\nif (matches) {\n return JSON.stringify([{\"{#MASTER_HOST}\": matches[1]}]);\n}\n\nreturn '[]';" ] }, { "type": "DISCARD_UNCHANGED_HEARTBEAT", "parameters": [ "1d" ] } ] } ], "tags": [ { "tag": "class", "value": "database" }, { "tag": "target", "value": "mysql" } ], "macros": [ { "macro": "{$MYSQL.ABORTED_CONN.MAX.WARN}", "value": "3", "description": "Number of failed attempts to connect to the MySQL server for trigger expressions." }, { "macro": "{$MYSQL.BUFF_UTIL.MIN.WARN}", "value": "50", "description": "The minimum buffer pool utilization in percentage for trigger expressions." }, { "macro": "{$MYSQL.CREATED_TMP_DISK_TABLES.MAX.WARN}", "value": "10", "description": "The maximum number of temporary tables created on a disk per second for trigger expressions." }, { "macro": "{$MYSQL.CREATED_TMP_FILES.MAX.WARN}", "value": "10", "description": "The maximum number of temporary files created on a disk per second for trigger expressions." }, { "macro": "{$MYSQL.CREATED_TMP_TABLES.MAX.WARN}", "value": "30", "description": "The maximum number of temporary tables created in memory per second for trigger expressions." }, { "macro": "{$MYSQL.DBNAME.MATCHES}", "value": ".+", "description": "Filter of discoverable databases." }, { "macro": "{$MYSQL.DBNAME.NOT_MATCHES}", "value": "information_schema", "description": "Filter to exclude discovered databases." }, { "macro": "{$MYSQL.HOST}", "value": "127.0.0.1", "description": "Hostname or IP of MySQL host or container." }, { "macro": "{$MYSQL.INNODB_LOG_FILES}", "value": "2", "description": "Number of physical files in the InnoDB redo log for calculating `innodb_log_file_size`." }, { "macro": "{$MYSQL.PORT}", "value": "3306", "description": "MySQL service port." }, { "macro": "{$MYSQL.REPL_LAG.MAX.WARN}", "value": "30m", "description": "Amount of time the slave is behind the master for trigger expressions." }, { "macro": "{$MYSQL.SLOW_QUERIES.MAX.WARN}", "value": "3", "description": "Number of slow queries for trigger expressions." } ], "dashboards": [ { "uuid": "ce2f9d7bb18e469f97e692baee02841d", "name": "MySQL performance", "pages": [ { "widgets": [ { "type": "GRAPH_CLASSIC", "name": "MySQL: Operations", "width": "12", "height": "5", "fields": [ { "type": "GRAPH", "name": "graphid", "value": { "host": "MySQL by Zabbix agent", "name": "MySQL: Operations" } } ] }, { "type": "GRAPH_CLASSIC", "name": "MySQL: Connections", "y": "5", "width": "12", "height": "5", "fields": [ { "type": "GRAPH", "name": "graphid", "value": { "host": "MySQL by Zabbix agent", "name": "MySQL: Connections" } } ] }, { "type": "GRAPH_CLASSIC", "name": "MySQL: InnoDB buffer pool", "y": "10", "width": "12", "height": "5", "fields": [ { "type": "GRAPH", "name": "graphid", "value": { "host": "MySQL by Zabbix agent", "name": "MySQL: InnoDB buffer pool" } } ] }, { "type": "GRAPH_CLASSIC", "name": "MySQL: Queries", "x": "12", "width": "12", "height": "5", "fields": [ { "type": "GRAPH", "name": "graphid", "value": { "host": "MySQL by Zabbix agent", "name": "MySQL: Queries" } } ] }, { "type": "GRAPH_CLASSIC", "name": "MySQL: Bandwidth", "x": "12", "y": "5", "width": "12", "height": "5", "fields": [ { "type": "GRAPH", "name": "graphid", "value": { "host": "MySQL by Zabbix agent", "name": "MySQL: Bandwidth" } } ] }, { "type": "GRAPH_CLASSIC", "name": "MySQL: Threads", "x": "12", "y": "10", "width": "12", "height": "5", "fields": [ { "type": "GRAPH", "name": "graphid", "value": { "host": "MySQL by Zabbix agent", "name": "MySQL: Threads" } } ] } ] } ] } ], "valuemaps": [ { "uuid": "4f2d7ca3c89246c6b691557447230031", "name": "Service state", "mappings": [ { "value": "0", "newvalue": "Down" }, { "value": "1", "newvalue": "Up" } ] } ] } ], "graphs": [ { "uuid": "6ebb6f300b4a4ada80908ce11cae9e95", "name": "MySQL: Bandwidth", "graph_items": [ { "drawtype": "GRADIENT_LINE", "color": "199C0D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.bytes_received.rate" } }, { "sortorder": "1", "drawtype": "GRADIENT_LINE", "color": "F63100", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.bytes_sent.rate" } } ] }, { "uuid": "ea03bd4cc0f948f38ea638fe93f2ac69", "name": "MySQL: Connections", "graph_items": [ { "color": "199C0D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.aborted_clients.rate" } }, { "sortorder": "1", "color": "F63100", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.aborted_connects.rate" } }, { "sortorder": "2", "color": "00611C", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.connections.rate" } }, { "sortorder": "3", "color": "F7941D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.max_used_connections" } } ] }, { "uuid": "ee3890503acf44c58fcfedf3c5008656", "name": "MySQL: InnoDB buffer pool", "graph_items": [ { "color": "199C0D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.innodb_buffer_pool_pages_free" } }, { "sortorder": "1", "color": "F63100", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.innodb_buffer_pool_pages_total" } }, { "sortorder": "2", "color": "00611C", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.innodb_buffer_pool_read_requests.rate" } }, { "sortorder": "3", "color": "F7941D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.innodb_buffer_pool_reads.rate" } } ] }, { "uuid": "a6296310a0cf4ffcad7b119c5089ef1f", "name": "MySQL: Operations", "graph_items": [ { "color": "199C0D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.com_delete.rate" } }, { "sortorder": "1", "color": "F63100", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.com_insert.rate" } }, { "sortorder": "2", "color": "00611C", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.com_select.rate" } }, { "sortorder": "3", "color": "F7941D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.com_update.rate" } } ] }, { "uuid": "ce723556c4974152a8eda029dbdad1bc", "name": "MySQL: Queries", "graph_items": [ { "color": "199C0D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.queries.rate" } }, { "sortorder": "1", "color": "F63100", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.questions.rate" } }, { "sortorder": "2", "color": "00611C", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.slow_queries.rate" } } ] }, { "uuid": "e7653013a2d94596a89c93f5352220df", "name": "MySQL: Threads", "graph_items": [ { "color": "199C0D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.threads_cached" } }, { "sortorder": "1", "color": "F63100", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.threads_connected" } }, { "sortorder": "2", "color": "00611C", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.threads_created.rate" } }, { "sortorder": "3", "color": "F7941D", "item": { "host": "MySQL by Zabbix agent", "key": "mysql.threads_running" } } ] } ] } }