def _metrics(self, appid): query_profile = self.api.get_query_profile_encoded(appid) profile = analyzer.analyze(analyzer.parse_data(query_profile)) ANALYZER.pre_process(profile) metrics = analyzer.metrics(profile) if ENABLE_QUERY_ANALYSIS.get(): result = ANALYZER.run(profile) if result and result[0]: for factor in result[0]['result']: if factor['reason'] and factor['result_id'] and metrics['nodes'].get(factor['result_id']): metrics['nodes'][factor['result_id']]['health'] = factor['reason'] return metrics
def has_workload_analytics(): return bool(ALTUS.AUTH_KEY_ID.get()) and ALTUS.HAS_WA.get( ) or ENABLE_QUERY_ANALYSIS.get()