From: Naoki Kambe Date: Thu, 13 Jun 2013 05:44:47 +0000 (+0900) Subject: [2884] update get_statistics() X-Git-Tag: bind10-1.2.0beta1-release~358^2~8 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=78981c6ff6b82a580786f332e58b5d3cfeed4e2c;p=thirdparty%2Fkea.git [2884] update get_statistics() to change the way to sum up values under zonename by adding a for-loop to read each classname and using the internal methods: _set_counter() and _inc_counter() --- diff --git a/src/lib/python/isc/statistics/counters.py b/src/lib/python/isc/statistics/counters.py index 457a09eb02..7f20ad00aa 100644 --- a/src/lib/python/isc/statistics/counters.py +++ b/src/lib/python/isc/statistics/counters.py @@ -396,15 +396,15 @@ class Counters(): # Start calculation for '_SERVER_' counts zones_spec = isc.config.find_spec_part(self._statistics._spec, self._perzone_prefix) - zones_attrs = zones_spec['item_default'][self._entire_server] zones_data = {} - for attr in zones_attrs: - id_str = '%s/%s' % (self._entire_server, attr) - sum_ = 0 - for name in zones: - if attr in zones[name]: - sum_ += zones[name][attr] - _set_counter(zones_data, zones_spec, id_str, sum_) + for cls in zones.keys(): + for zone in zones[cls].keys(): + for (attr, val) in zones[cls][zone].items(): + id_str = '%s/%%s/%s' % (cls, attr) + id_str1 = id_str % zone + id_str2 = id_str % self._entire_server + _set_counter(zones_data, zones_spec, id_str1, val) + _inc_counter(zones_data, zones_spec, id_str2, val) # insert entire-server counts statistics_data[self._perzone_prefix] = dict( statistics_data[self._perzone_prefix],