@cryptotaxi247 / netdata-1 / commits / 091be2c10

Add General Apply/Commit lantecy

Luis Eduardo committed Jan 26, 2018 at 10:27 UTC 091be2c10b0fd2625f71c8042013ec58479f0700
2 files changed +27 -6
python.d/ceph.chart.py
+23 -6
@@ -17,8 +17,8 @@ priority = 60000
17 retries = 60
18
19 ORDER = ['general_usage', 'general_objects', 'general_bytes', 'general_operations',
20 - 'pool_usage', 'pool_objects', 'pool_write_iops', 'pool_read_iops',
21 - 'osd_usage', 'osd_apply_latency', 'osd_commit_latency']
20 + 'general_latency', 'pool_usage', 'pool_objects', 'pool_read_iops',
21 + 'pool_write_iops', 'osd_usage', 'osd_apply_latency', 'osd_commit_latency']
22
23 CHARTS = {
24 'general_usage': {
@@ -50,6 +50,14 @@ CHARTS = {
50 ['general_write_operations', 'write', 'absolute', -1]
51 ]
52 },
53 + 'general_latency': {
54 + 'options': [None, 'Ceph General Apply/Commit latency', 'milliseconds', 'general', 'ceph.general_latency',
55 + 'area'],
56 + 'lines': [
57 + ['general_apply_latency', 'apply', 'absolute'],
58 + ['general_commit_latency', 'commit', 'absolute']
59 + ]
60 + },
61 'pool_usage': {
62 'options': [None, 'Ceph Pools', 'KB', 'pool', 'ceph.pool_usage', 'line'],
63 'lines': []
@@ -124,12 +132,12 @@ class Service(SimpleService):
132 self.definitions['pool_objects']['lines'].append(["obj_{0}".format(pool['name']),
133 pool['name'],
134 'absolute'])
127 - self.definitions['pool_write_iops']['lines'].append(['write_{0}'.format(pool['name']),
128 - pool['name'],
129 - 'incremental'])
135 self.definitions['pool_read_iops']['lines'].append(['read_{0}'.format(pool['name']),
136 pool['name'],
137 'incremental'])
138 + self.definitions['pool_write_iops']['lines'].append(['write_{0}'.format(pool['name']),
139 + pool['name'],
140 + 'incremental'])
141
142 for osd in sorted(self._get_osd_df()['nodes']):
143 self.definitions['osd_usage']['lines'].append([osd['name'],
@@ -169,11 +177,15 @@ class Service(SimpleService):
177 """
178 df = self._get_df()
179 pool_stats = self._get_osd_pool_stats()
180 + osd_perf = self._get_osd_perf()
181 +
182 general_objects = 0
183 read_bytes_sec = 0
184 write_bytes_sec = 0
185 read_op_per_sec = 0
186 write_op_per_sec = 0
187 + apply_latency = 0
188 + commit_latency = 0
189
190 for pool in df['pools']:
191 general_objects = general_objects + pool['stats']['objects']
@@ -182,6 +194,9 @@ class Service(SimpleService):
194 write_bytes_sec = write_bytes_sec + pool_rw_io_b['client_io_rate'].get('write_bytes_sec', 0)
195 read_op_per_sec = read_op_per_sec + pool_rw_io_b['client_io_rate'].get('read_op_per_sec', 0)
196 write_op_per_sec = write_op_per_sec + pool_rw_io_b['client_io_rate'].get('write_op_per_sec', 0)
197 + for perf in osd_perf['osd_perf_infos']:
198 + apply_latency = apply_latency + perf['perf_stats']['apply_latency_ms']
199 + commit_latency = commit_latency + perf['perf_stats']['commit_latency_ms']
200
201 return {'general_usage': df['stats']['total_used_bytes'],
202 'general_available': df['stats']['total_avail_bytes'],
@@ -189,7 +204,9 @@ class Service(SimpleService):
204 'general_read_bytes': read_bytes_sec,
205 'general_write_bytes': write_bytes_sec,
206 'general_read_operations': read_op_per_sec,
192 - 'general_write_operations': write_op_per_sec
207 + 'general_write_operations': write_op_per_sec,
208 + 'general_apply_latency': apply_latency,
209 + 'general_commit_latency': commit_latency
210 }
211
212 def _get_pool_usage(self, pool):
web/dashboard_info.js
+4
@@ -1334,6 +1334,10 @@ netdataDashboard.context = {
1334 info: 'Shows cluster general read/write operations per second.'
1335 },
1336
1337 + 'ceph.general_latency': {
1338 + info: 'Shows cluster general apply/commit latency.'
1339 + },
1340 +
1341 'ceph.pool_usage': {
1342 info: 'Shows info about pool usage.'
1343 },