1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
|
plugin_name: python.d.plugin
modules:
- meta:
plugin_name: python.d.plugin
module_name: riakkv
monitored_instance:
name: RiakKV
link: "https://riak.com/products/riak-kv/index.html"
categories:
- data-collection.database-servers
icon_filename: "riak.svg"
related_resources:
integrations:
list: []
info_provided_to_referring_integrations:
description: ""
keywords:
- database
- nosql
- big data
most_popular: false
overview:
data_collection:
metrics_description: |
This collector monitors RiakKV metrics about throughput, latency, resources and more.'
method_description: "This collector reads the database stats from the `/stats` endpoint."
supported_platforms:
include: []
exclude: []
multi_instance: true
additional_permissions:
description: ""
default_behavior:
auto_detection:
description: "If the /stats endpoint is accessible, RiakKV instances on the local host running on port 8098 will be autodetected."
limits:
description: ""
performance_impact:
description: ""
setup:
prerequisites:
list:
- title: Configure RiakKV to enable /stats endpoint
description: |
You can follow the RiakKV configuration reference documentation for how to enable this.
Source : https://docs.riak.com/riak/kv/2.2.3/configuring/reference/#client-interfaces
configuration:
file:
name: "python.d/riakkv.conf"
options:
description: |
There are 2 sections:
* Global variables
* One or more JOBS that can define multiple different instances to monitor.
The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.
Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
folding:
title: "Config options"
enabled: true
list:
- name: update_every
description: Sets the default data collection frequency.
default_value: 5
required: false
- name: priority
description: Controls the order of charts at the netdata dashboard.
default_value: 60000
required: false
- name: autodetection_retry
description: Sets the job re-check interval in seconds.
default_value: 0
required: false
- name: penalty
description: Indicates whether to apply penalty to update_every in case of failures.
default_value: yes
required: false
- name: url
description: The url of the server
default_value: no
required: true
examples:
folding:
enabled: true
title: "Config"
list:
- name: Basic (default)
folding:
enabled: false
description: A basic example configuration per job
config: |
local:
url: 'http://localhost:8098/stats'
- name: Multi-instance
description: |
> **Note**: When you define multiple jobs, their names must be unique.
Collecting metrics from local and remote instances.
config: |
local:
url: 'http://localhost:8098/stats'
remote:
url: 'http://192.0.2.1:8098/stats'
troubleshooting:
problems:
list: []
alerts:
- name: riakkv_1h_kv_get_mean_latency
link: https://github.com/netdata/netdata/blob/master/src/health/health.d/riakkv.conf
metric: riak.kv.latency.get
info: average time between reception of client GET request and subsequent response to client over the last hour
- name: riakkv_kv_get_slow
link: https://github.com/netdata/netdata/blob/master/src/health/health.d/riakkv.conf
metric: riak.kv.latency.get
info: average time between reception of client GET request and subsequent response to the client over the last 3 minutes, compared to the average over the last hour
- name: riakkv_1h_kv_put_mean_latency
link: https://github.com/netdata/netdata/blob/master/src/health/health.d/riakkv.conf
metric: riak.kv.latency.put
info: average time between reception of client PUT request and subsequent response to the client over the last hour
- name: riakkv_kv_put_slow
link: https://github.com/netdata/netdata/blob/master/src/health/health.d/riakkv.conf
metric: riak.kv.latency.put
info: average time between reception of client PUT request and subsequent response to the client over the last 3 minutes, compared to the average over the last hour
- name: riakkv_vm_high_process_count
link: https://github.com/netdata/netdata/blob/master/src/health/health.d/riakkv.conf
metric: riak.vm
info: number of processes running in the Erlang VM
- name: riakkv_list_keys_active
link: https://github.com/netdata/netdata/blob/master/src/health/health.d/riakkv.conf
metric: riak.core.fsm_active
info: number of currently running list keys finite state machines
metrics:
folding:
title: Metrics
enabled: false
description: ""
availability: []
scopes:
- name: global
description: "These metrics refer to the entire monitored application."
labels: []
metrics:
- name: riak.kv.throughput
description: Reads & writes coordinated by this node
unit: "operations/s"
chart_type: line
dimensions:
- name: gets
- name: puts
- name: riak.dt.vnode_updates
description: Update operations coordinated by local vnodes by data type
unit: "operations/s"
chart_type: line
dimensions:
- name: counters
- name: sets
- name: maps
- name: riak.search
description: Search queries on the node
unit: "queries/s"
chart_type: line
dimensions:
- name: queries
- name: riak.search.documents
description: Documents indexed by search
unit: "documents/s"
chart_type: line
dimensions:
- name: indexed
- name: riak.consistent.operations
description: Consistent node operations
unit: "operations/s"
chart_type: line
dimensions:
- name: gets
- name: puts
- name: riak.kv.latency.get
description: Time between reception of a client GET request and subsequent response to client
unit: "ms"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.kv.latency.put
description: Time between reception of a client PUT request and subsequent response to client
unit: "ms"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.dt.latency.counter_merge
description: Time it takes to perform an Update Counter operation
unit: "ms"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.dt.latency.set_merge
description: Time it takes to perform an Update Set operation
unit: "ms"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.dt.latency.map_merge
description: Time it takes to perform an Update Map operation
unit: "ms"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.search.latency.query
description: Search query latency
unit: "ms"
chart_type: line
dimensions:
- name: median
- name: min
- name: "95"
- name: "99"
- name: "999"
- name: max
- name: riak.search.latency.index
description: Time it takes Search to index a new document
unit: "ms"
chart_type: line
dimensions:
- name: median
- name: min
- name: "95"
- name: "99"
- name: "999"
- name: max
- name: riak.consistent.latency.get
description: Strongly consistent read latency
unit: "ms"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.consistent.latency.put
description: Strongly consistent write latency
unit: "ms"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.vm
description: Total processes running in the Erlang VM
unit: "total"
chart_type: line
dimensions:
- name: processes
- name: riak.vm.memory.processes
description: Memory allocated & used by Erlang processes
unit: "MB"
chart_type: line
dimensions:
- name: allocated
- name: used
- name: riak.kv.siblings_encountered.get
description: Number of siblings encountered during GET operations by this node during the past minute
unit: "siblings"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.kv.objsize.get
description: Object size encountered by this node during the past minute
unit: "KB"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.search.vnodeq_size
description: Number of unprocessed messages in the vnode message queues of Search on this node in the past minute
unit: "messages"
chart_type: line
dimensions:
- name: mean
- name: median
- name: "95"
- name: "99"
- name: "100"
- name: riak.search.index
description: Number of document index errors encountered by Search
unit: "errors"
chart_type: line
dimensions:
- name: errors
- name: riak.core.protobuf_connections
description: Protocol buffer connections by status
unit: "connections"
chart_type: line
dimensions:
- name: active
- name: riak.core.repairs
description: Number of repair operations this node has coordinated
unit: "repairs"
chart_type: line
dimensions:
- name: read
- name: riak.core.fsm_active
description: Active finite state machines by kind
unit: "fsms"
chart_type: line
dimensions:
- name: get
- name: put
- name: secondary index
- name: list keys
- name: riak.core.fsm_rejected
description: Finite state machines being rejected by Sidejobs overload protection
unit: "fsms"
chart_type: line
dimensions:
- name: get
- name: put
- name: riak.search.index
description: Number of writes to Search failed due to bad data format by reason
unit: "writes"
chart_type: line
dimensions:
- name: bad_entry
- name: extract_fail
|