From 2a160f5bf699441b9841c89ebe4ed2277cd5a9ff Mon Sep 17 00:00:00 2001 From: Derek Balling Date: Thu, 29 Dec 2016 09:23:41 +0000 Subject: [PATCH 1/2] Allow basic replication info to be available without performance_schema available. --- checks.d/mysql.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/checks.d/mysql.py b/checks.d/mysql.py index be94bfd8d1..ab08692588 100644 --- a/checks.d/mysql.py +++ b/checks.d/mysql.py @@ -529,7 +529,12 @@ def _collect_metrics(self, host, db, tags, options, queries): if _is_affirmative(options.get('replication', False)): # Get replica stats results.update(self._get_replica_stats(db)) - results.update(self._get_slave_status(db)) + performance_schema_enabled = self._get_variable_enabled(results, 'performance_schema') + if _is_affirmative(options.get('extra_performance_metrics', False)) and \ + self._version_compatible(db, host, "5.6.0") and \ + performance_schema_enabled: + results.update(self._get_slave_status(db)) + metrics.update(REPLICA_VARS) # get slave running form global status page From 074d7c77978fac2a6c045005a4ed0932c2bb6178 Mon Sep 17 00:00:00 2001 From: Derek Balling Date: Thu, 29 Dec 2016 09:38:20 +0000 Subject: [PATCH 2/2] Sorry, I'm not usually a python guy. Corrected indentation and spacing --- checks.d/mysql.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/checks.d/mysql.py b/checks.d/mysql.py index ab08692588..9296a43533 100644 --- a/checks.d/mysql.py +++ b/checks.d/mysql.py @@ -530,9 +530,10 @@ def _collect_metrics(self, host, db, tags, options, queries): # Get replica stats results.update(self._get_replica_stats(db)) performance_schema_enabled = self._get_variable_enabled(results, 'performance_schema') + if _is_affirmative(options.get('extra_performance_metrics', False)) and \ - self._version_compatible(db, host, "5.6.0") and \ - performance_schema_enabled: + self._version_compatible(db, host, "5.6.0") and \ + performance_schema_enabled: results.update(self._get_slave_status(db)) metrics.update(REPLICA_VARS)