From 16d8e69a4c70b4824749ff208144c34427a15bf2 Mon Sep 17 00:00:00 2001 From: Jakub Wachowski Date: Tue, 8 Aug 2017 13:52:59 +0200 Subject: [PATCH] Use ujson instead of json for parsing messages ujson is simply faster than json :) Change-Id: I1f33dda01cc4ee09f0bae1c2d2a33fbda65c1cac --- .../cassandra/alarm_state_history_repository.py | 2 +- .../repositories/cassandra/metrics_repository.py | 2 +- .../influxdb/alarm_state_history_repository.py | 2 +- monasca_persister/repositories/influxdb/line_utils.py | 7 ++++++- .../repositories/influxdb/metrics_repository.py | 2 +- monasca_persister/repositories/utils.py | 2 +- 6 files changed, 11 insertions(+), 6 deletions(-) diff --git a/monasca_persister/repositories/cassandra/alarm_state_history_repository.py b/monasca_persister/repositories/cassandra/alarm_state_history_repository.py index 335f72bb..7993e750 100644 --- a/monasca_persister/repositories/cassandra/alarm_state_history_repository.py +++ b/monasca_persister/repositories/cassandra/alarm_state_history_repository.py @@ -12,7 +12,7 @@ # implied. # See the License for the specific language governing permissions and # limitations under the License. -import json +import ujson as json from cassandra import query from oslo_log import log diff --git a/monasca_persister/repositories/cassandra/metrics_repository.py b/monasca_persister/repositories/cassandra/metrics_repository.py index ce10c094..5ec798d6 100644 --- a/monasca_persister/repositories/cassandra/metrics_repository.py +++ b/monasca_persister/repositories/cassandra/metrics_repository.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. import hashlib -import json +import ujson as json from cassandra import query from oslo_log import log diff --git a/monasca_persister/repositories/influxdb/alarm_state_history_repository.py b/monasca_persister/repositories/influxdb/alarm_state_history_repository.py index fea37bb6..416393b2 100644 --- a/monasca_persister/repositories/influxdb/alarm_state_history_repository.py +++ b/monasca_persister/repositories/influxdb/alarm_state_history_repository.py @@ -12,7 +12,7 @@ # implied. # See the License for the specific language governing permissions and # limitations under the License. -import json +import ujson as json from oslo_log import log diff --git a/monasca_persister/repositories/influxdb/line_utils.py b/monasca_persister/repositories/influxdb/line_utils.py index 367e0c71..f91d6390 100644 --- a/monasca_persister/repositories/influxdb/line_utils.py +++ b/monasca_persister/repositories/influxdb/line_utils.py @@ -28,12 +28,17 @@ def escape_tag(tag): u"=", u"\\=" ) + def get_unicode(data): if PY2: - return unicode(data) + if isinstance(data, unicode): + return data + else: + return data.decode('utf-8') else: return str(data) + def escape_value(value): return u"\"{0}\"".format( get_unicode(value).replace( diff --git a/monasca_persister/repositories/influxdb/metrics_repository.py b/monasca_persister/repositories/influxdb/metrics_repository.py index 0ab342b3..162d9143 100644 --- a/monasca_persister/repositories/influxdb/metrics_repository.py +++ b/monasca_persister/repositories/influxdb/metrics_repository.py @@ -12,7 +12,7 @@ # implied. # See the License for the specific language governing permissions and # limitations under the License. -import json +import ujson as json from oslo_log import log diff --git a/monasca_persister/repositories/utils.py b/monasca_persister/repositories/utils.py index 6a78fa1b..23459ce0 100644 --- a/monasca_persister/repositories/utils.py +++ b/monasca_persister/repositories/utils.py @@ -12,7 +12,7 @@ # implied. # See the License for the specific language governing permissions and # limitations under the License. -import json +import ujson as json def parse_measurement_message(message):