blob: ef9458c0329d9b481f3ead578f436fda00476101 (
plain)
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
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
|
plugin_name: go.d.plugin
modules:
- meta:
id: collector-go.d.plugin-cassandra
module_name: cassandra
plugin_name: go.d.plugin
monitored_instance:
categories:
- data-collection.database-servers
icon_filename: cassandra.svg
name: Cassandra
link: https://cassandra.apache.org/_/index.html
alternative_monitored_instances: []
keywords:
- nosql
- dbms
- db
- database
related_resources:
integrations:
list: []
info_provided_to_referring_integrations:
description: ""
most_popular: false
overview:
data_collection:
metrics_description: |
This collector gathers metrics about client requests, cache hits, and many more, while also providing metrics per each thread pool.
method_description: |
The [JMX Exporter](https://github.com/prometheus/jmx_exporter) is used to fetch metrics from a Cassandra instance and make them available at an endpoint like `http://127.0.0.1:7072/metrics`.
supported_platforms:
include: []
exclude: []
multi_instance: true
additional_permissions:
description: ""
default_behavior:
auto_detection:
description: |
This collector discovers instances running on the local host that provide metrics on port 7072.
On startup, it tries to collect metrics from:
- http://127.0.0.1:7072/metrics
limits:
description: ""
performance_impact:
description: ""
setup:
prerequisites:
list:
- title: Configure Cassandra with Prometheus JMX Exporter
description: |
To configure Cassandra with the [JMX Exporter](https://github.com/prometheus/jmx_exporter):
> **Note**: paths can differ depends on your setup.
- Download latest [jmx_exporter](https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/) jar file
and install it in a directory where Cassandra can access it.
- Add
the [jmx_exporter.yaml](https://raw.githubusercontent.com/netdata/go.d.plugin/master/modules/cassandra/jmx_exporter.yaml)
file to `/etc/cassandra`.
- Add the following line to `/etc/cassandra/cassandra-env.sh`
```
JVM_OPTS="$JVM_OPTS $JVM_EXTRA_OPTS -javaagent:/opt/jmx_exporter/jmx_exporter.jar=7072:/etc/cassandra/jmx_exporter.yaml
```
- Restart cassandra service.
configuration:
file:
name: go.d/cassandra.conf
options:
description: |
The following options can be defined globally: update_every, autodetection_retry.
folding:
title: Config options
enabled: true
list:
- name: update_every
description: Data collection frequency.
default_value: 5
required: false
- name: autodetection_retry
description: Recheck interval in seconds. Zero means no recheck will be scheduled.
default_value: 0
required: false
- name: url
description: Server URL.
default_value: http://127.0.0.1:7072/metrics
required: true
- name: username
description: Username for basic HTTP authentication.
default_value: ""
required: false
- name: password
description: Password for basic HTTP authentication.
default_value: ""
required: false
- name: proxy_url
description: Proxy URL.
default_value: ""
required: false
- name: proxy_username
description: Username for proxy basic HTTP authentication.
default_value: ""
required: false
- name: proxy_password
description: Password for proxy basic HTTP authentication.
default_value: ""
required: false
- name: timeout
description: HTTP request timeout.
default_value: 2
required: false
- name: not_follow_redirects
description: Redirect handling policy. Controls whether the client follows redirects.
default_value: false
required: false
- name: tls_skip_verify
description: Server certificate chain and hostname validation policy. Controls whether the client performs this check.
default_value: false
required: false
- name: tls_ca
description: Certification authority that the client uses when verifying the server's certificates.
default_value: ""
required: false
- name: tls_cert
description: Client TLS certificate.
default_value: ""
required: false
- name: tls_key
description: Client TLS key.
default_value: ""
required: false
examples:
folding:
title: Config
enabled: true
list:
- name: Basic
folding:
enabled: false
description: A basic example configuration.
config: |
jobs:
- name: local
url: http://127.0.0.1:7072/metrics
- name: HTTP authentication
description: Local server with basic HTTP authentication.
config: |
jobs:
- name: local
url: http://127.0.0.1:7072/metrics
username: foo
password: bar
- name: HTTPS with self-signed certificate
description: Local server with enabled HTTPS and self-signed certificate.
config: |
jobs:
- name: local
url: https://127.0.0.1:7072/metrics
tls_skip_verify: yes
- name: Multi-instance
description: |
> **Note**: When you define multiple jobs, their names must be unique.
Collecting metrics from local and remote instances.
config: |
jobs:
- name: local
url: http://127.0.0.1:7072/metrics
- name: remote
url: http://192.0.2.1:7072/metrics
troubleshooting:
problems:
list: []
alerts: []
metrics:
folding:
title: Metrics
enabled: false
description: ""
availability: []
scopes:
- name: global
description: These metrics refer to the entire monitored application.
labels: []
metrics:
- name: cassandra.client_requests_rate
availability: []
description: Client requests rate
unit: requests/s
chart_type: line
dimensions:
- name: read
- name: write
- name: cassandra.client_request_read_latency_histogram
availability: []
description: Client request read latency histogram
unit: seconds
chart_type: line
dimensions:
- name: p50
- name: p75
- name: p95
- name: p98
- name: p99
- name: p999
- name: cassandra.client_request_write_latency_histogram
availability: []
description: Client request write latency histogram
unit: seconds
chart_type: line
dimensions:
- name: p50
- name: p75
- name: p95
- name: p98
- name: p99
- name: p999
- name: cassandra.client_requests_latency
availability: []
description: Client requests total latency
unit: seconds
chart_type: line
dimensions:
- name: read
- name: write
- name: cassandra.row_cache_hit_ratio
availability: []
description: Key cache hit ratio
unit: percentage
chart_type: line
dimensions:
- name: hit_ratio
- name: cassandra.row_cache_hit_rate
availability: []
description: Key cache hit rate
unit: events/s
chart_type: stacked
dimensions:
- name: hits
- name: misses
- name: cassandra.row_cache_utilization
availability: []
description: Key cache utilization
unit: percentage
chart_type: line
dimensions:
- name: used
- name: cassandra.row_cache_size
availability: []
description: Key cache size
unit: bytes
chart_type: line
dimensions:
- name: size
- name: cassandra.key_cache_hit_ratio
availability: []
description: Row cache hit ratio
unit: percentage
chart_type: line
dimensions:
- name: hit_ratio
- name: cassandra.key_cache_hit_rate
availability: []
description: Row cache hit rate
unit: events/s
chart_type: stacked
dimensions:
- name: hits
- name: misses
- name: cassandra.key_cache_utilization
availability: []
description: Row cache utilization
unit: percentage
chart_type: line
dimensions:
- name: used
- name: cassandra.key_cache_size
availability: []
description: Row cache size
unit: bytes
chart_type: line
dimensions:
- name: size
- name: cassandra.storage_live_disk_space_used
availability: []
description: Disk space used by live data
unit: bytes
chart_type: line
dimensions:
- name: used
- name: cassandra.compaction_completed_tasks_rate
availability: []
description: Completed compactions rate
unit: tasks/s
chart_type: line
dimensions:
- name: completed
- name: cassandra.compaction_pending_tasks_count
availability: []
description: Pending compactions
unit: tasks
chart_type: line
dimensions:
- name: pending
- name: cassandra.compaction_compacted_rate
availability: []
description: Compaction data rate
unit: bytes/s
chart_type: line
dimensions:
- name: compacted
- name: cassandra.jvm_memory_used
availability: []
description: Memory used
unit: bytes
chart_type: stacked
dimensions:
- name: heap
- name: nonheap
- name: cassandra.jvm_gc_rate
availability: []
description: Garbage collections rate
unit: gc/s
chart_type: line
dimensions:
- name: parnew
- name: cms
- name: cassandra.jvm_gc_time
availability: []
description: Garbage collection time
unit: seconds
chart_type: line
dimensions:
- name: parnew
- name: cms
- name: cassandra.dropped_messages_rate
availability: []
description: Dropped messages rate
unit: messages/s
chart_type: line
dimensions:
- name: dropped
- name: cassandra.client_requests_timeouts_rate
availability: []
description: Client requests timeouts rate
unit: timeout/s
chart_type: line
dimensions:
- name: read
- name: write
- name: cassandra.client_requests_unavailables_rate
availability: []
description: Client requests unavailable exceptions rate
unit: exceptions/s
chart_type: line
dimensions:
- name: read
- name: write
- name: cassandra.client_requests_failures_rate
availability: []
description: Client requests failures rate
unit: failures/s
chart_type: line
dimensions:
- name: read
- name: write
- name: cassandra.storage_exceptions_rate
availability: []
description: Storage exceptions rate
unit: exceptions/s
chart_type: line
dimensions:
- name: storage
- name: thread pool
description: Metrics related to Cassandra's thread pools. Each thread pool provides its own set of the following metrics.
labels:
- name: thread_pool
description: thread pool name
metrics:
- name: cassandra.thread_pool_active_tasks_count
availability: []
description: Active tasks
unit: tasks
chart_type: line
dimensions:
- name: active
- name: cassandra.thread_pool_pending_tasks_count
availability: []
description: Pending tasks
unit: tasks
chart_type: line
dimensions:
- name: pending
- name: cassandra.thread_pool_blocked_tasks_count
availability: []
description: Blocked tasks
unit: tasks
chart_type: line
dimensions:
- name: blocked
- name: cassandra.thread_pool_blocked_tasks_rate
availability: []
description: Blocked tasks rate
unit: tasks/s
chart_type: line
dimensions:
- name: blocked
|