From 9dc01197ee8963767b290eea72143d35a0e2e747 Mon Sep 17 00:00:00 2001 From: kang2453 Date: Thu, 3 Apr 2025 16:52:14 +0900 Subject: [PATCH] refactor: clean up code formatting and improve metric filter logic Signed-off-by: kang2453 Signed-off-by: kang2453 --- pkg/pip_requirements.txt | 3 +-- .../google_cloud_monitoring.py | 22 +++++-------------- .../monitoring/service/metric_service.py | 13 +++++------ 3 files changed, 13 insertions(+), 25 deletions(-) diff --git a/pkg/pip_requirements.txt b/pkg/pip_requirements.txt index 50e4cf0..d0912df 100644 --- a/pkg/pip_requirements.txt +++ b/pkg/pip_requirements.txt @@ -1,4 +1,3 @@ google-auth google-api-python-client -schematics -grpcio>=1.64.1 \ No newline at end of file +schematics \ No newline at end of file diff --git a/src/spaceone/monitoring/connector/google_cloud_connector/google_cloud_monitoring.py b/src/spaceone/monitoring/connector/google_cloud_connector/google_cloud_monitoring.py index a68ab04..acd0f16 100644 --- a/src/spaceone/monitoring/connector/google_cloud_connector/google_cloud_monitoring.py +++ b/src/spaceone/monitoring/connector/google_cloud_connector/google_cloud_monitoring.py @@ -24,7 +24,6 @@ def list_metrics(self, query): 'name': query['name'], 'filter': self.set_metric_filter(metric_filter) } - # print(f"Filter:{_query.get("filter")}") for gc_metric in self.list_metric_descriptors(_query): metric_kind = gc_metric.get('metricKind', '') @@ -109,22 +108,17 @@ def list_metrics_time_series(self, metric_query, metric, start, end, period, sta try: name = _query['name'] _filter = _query['filter'] - # _merge_filter = f"metric.type = starts_with(\"{_filter['metric_type']}\")" - _merge_filter = f'metric.type = "{_filter['metric_type']}"' + _merge_filter = f"metric.type = starts_with(\"{_filter['metric_type']}\")" or_filter_list = [] for _label in _filter.get('labels', []): or_filter_list.append(f"{_label['key']} = \"{_label['value']}\"") - # or_merge_filter = ' OR '.join(or_filter_list) - # _metric_filter = ' AND '.join([_merge_filter, or_merge_filter]) - or_merge_filter = ' '.join(or_filter_list) - _metric_filter = ' '.join([_merge_filter, or_merge_filter]) - + or_merge_filter = ' OR '.join(or_filter_list) + _metric_filter = ' AND '.join([_merge_filter, or_merge_filter]) query = self.get_metric_data_query(name, _metric_filter, metric, start, end, period, stat) _LOGGER.debug(f'[list_metrics_time_series] query: {query}') - # print(f"list_metrics_time_series:{query}") response = self.client.projects().timeSeries().list(**query).execute() response_data.update({'unit': response.get('unit')}) @@ -182,18 +176,14 @@ def get_metric_data_query(name, metric_filter, metric, start, end, period, stat) @staticmethod def set_metric_filter(metric_filter): - # _metric_filter = f"metric.type = starts_with(\"{metric_filter['metric_type']}\")" - _metric_filter = f'metric.type : "{metric_filter['metric_type']}" ' - + _metric_filter = f"metric.type = starts_with(\"{metric_filter['metric_type']}\")" filter_list = [] for _label in metric_filter.get('labels', []): filter_list.append(f"{_label['key']} = \"{_label['value']}\"") - # or_merge_filter = ' OR '.join(filter_list) - # _metric_filter = ' AND '.join([_metric_filter, or_merge_filter]) - or_merge_filter = ' '.join(filter_list) - _metric_filter = ' '.join([_metric_filter, or_merge_filter]) + or_merge_filter = ' OR '.join(filter_list) + _metric_filter = ' AND '.join([_metric_filter, or_merge_filter]) return _metric_filter diff --git a/src/spaceone/monitoring/service/metric_service.py b/src/spaceone/monitoring/service/metric_service.py index 1b197aa..dc3d753 100644 --- a/src/spaceone/monitoring/service/metric_service.py +++ b/src/spaceone/monitoring/service/metric_service.py @@ -33,9 +33,8 @@ def list(self, params): Returns: plugin_metrics_response (dict) """ - metrics_info = self.google_mgr.list_metrics( - params.get('schema', DEFAULT_SCHEMA), params['options'], - params['secret_data'], params['query']) + metrics_info = self.google_mgr.list_metrics(params.get('schema', DEFAULT_SCHEMA), params['options'], + params['secret_data'], params['query']) return self.metric_mgr.make_metrics_response(metrics_info) @@ -62,9 +61,9 @@ def get_data(self, params): plugin_metric_data_response (dict) """ metric_data_info = self.google_mgr.get_metric_data(params.get('schema', DEFAULT_SCHEMA), params['options'], - params['secret_data'], - params['metric_query'], params['metric'], - params['start'], params['end'], params.get('period'), - params.get('stat')) + params['secret_data'], + params['metric_query'], params['metric'], + params['start'], params['end'], params.get('period'), + params.get('stat')) return self.metric_mgr.make_metric_data_response(metric_data_info)