Page MenuHomePhabricator

Upgrade mysqld_exporter to 0.9.0
Closed, DeclinedPublic

Description

Upstream has released mysqld_exporter 0.9.0 with bugfixes and improvements

## 0.9.0 / 2016-09-26

BREAKING CHANGES:
* InnoDB buffer pool page stats have been renamed/fixed to better support aggregations (#130)

* [FEATURE] scrape slave status for multisource replication #134
* [FEATURE] Add client statistics support (+ add tests on users & clients statistics) #138
* [IMPROVEMENT] Consistency of error logging. #144
* [IMPROVEMENT] Add label aggregation for innodb buffer metrics #130
* [IMPROVEMENT] Improved and fixed user/client statistics #149
* [FEATURE] Added the last binlog file number metric. #152
* [MISC] Add an example recording rules file #156
* [FEATURE] Added PXC/Galera info metrics. #155
* [FEATURE] Added metrics from SHOW ENGINE INNODB STATUS. #160
* [IMPROVEMENT] Fix wsrep_cluster_status #146

Related Objects

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald TranscriptOct 5 2016, 4:27 PM

Mentioned in SAL (#wikimedia-operations) [2016-10-05T16:28:39Z] <godog> upgrade mysqld_exporter to 0.9.0 on db2030 T147476

For the collectors we have enabled, the difference is added dimensions for replication metrics: (channel_name / master_host / master_uuid)

@@ -934,27 +957,27 @@
 mysql_info_schema_threads_seconds{state="waiting
 mysql_info_schema_threads_seconds{state="waiting
 mysql_info_schema_threads_seconds{state="writing
-mysql_slave_status_connect_retry
-mysql_slave_status_exec_master_log_pos
-mysql_slave_status_last_errno
-mysql_slave_status_last_io_errno
-mysql_slave_status_last_sql_errno
-mysql_slave_status_master_port
-mysql_slave_status_master_server_id
-mysql_slave_status_master_ssl_allowed
-mysql_slave_status_master_ssl_verify_server_cert
-mysql_slave_status_read_master_log_pos
-mysql_slave_status_relay_log_pos
-mysql_slave_status_relay_log_space
-mysql_slave_status_seconds_behind_master
-mysql_slave_status_skip_counter
-mysql_slave_status_slave_io_running
-mysql_slave_status_slave_sql_running
-mysql_slave_status_until_log_pos
-mysql_slave_status_using_gtid
+mysql_slave_status_connect_retry{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_exec_master_log_pos{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_last_errno{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_last_io_errno{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_last_sql_errno{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_master_port{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_master_server_id{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_master_ssl_allowed{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_master_ssl_verify_server_cert{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_read_master_log_pos{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_relay_log_pos{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_relay_log_space{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_seconds_behind_master{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_skip_counter{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_slave_io_running{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_slave_sql_running{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_until_log_pos{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
+mysql_slave_status_using_gtid{channel_name="",master_host="db1009.eqiad.wmnet",master_uuid=""}
 mysql_up
 mysql_version_info{innodb_version="5.6.26-76.0",version="10.0.23-MariaDB-log",version_comment="MariaDB
-mysqld_exporter_build_info{branch="",goversion="go1.6.1",revision="",version=""}
+mysqld_exporter_build_info{branch="",goversion="go1.7.1",revision="",version=""}
 process_cpu_seconds_total
 process_max_fds
 process_open_fds

@godog Do you want me to handle the upgrade? If you upload the new package, I can handle the puppet config changes (I want to enable SHOW ENGINE INNODB STATUS and do the upgrade slowly).

@jcrespo sounds good to me, thanks! I've uploaded 0.9.0 both to Debian official and internally for jessie/trusty. It should be available for upgrade now everywhere. I'm happy to review the changes if needed too.

I have upgraded db1043 to it, with no known issues.

As a side note, the latest version of prometheus-mysqld-exporter correct sets build information, so the rollout can be also tracked with a prometheus query e.g. count(mysqld_exporter_build_info) by (revision)