noony / prometheus-solr-exporter

Solr exporter for prometheus.
Apache License 2.0
27 stars 18 forks source link

Error while running this exporter #2

Closed m4rcc closed 7 years ago

m4rcc commented 7 years ago

Hi, I compiled this exporter and i am having the following error:

ubuntu@xxxx:~$ sudo ./prometheus-solr-exporter -log.level debug INFO[0000] Starting solr_exporter (version=, branch=, revision=) source="main.go:60" INFO[0000] Build context (go=go1.8, user=, date=) source="main.go:61" INFO[0000] Listening on :9231 source="main.go:83" ERRO[0007] Failed to unmarshal mbeans cache metrics JSON into struct: json: cannot unmarshal number into Go struct field .hitratio of type string source="exporter.go:379"

I am using: -Ubuntu 14 -6.1.0 -go version go1.8 linux/amd64

The error appears every time i refresh the metrics page (http://x.y.z.a:9231/metrics). The exported metrics are:

HELP go_gc_duration_seconds A summary of the GC invocation durations.

TYPE go_gc_duration_seconds summary

go_gc_duration_seconds{quantile="0"} 0 go_gc_duration_seconds{quantile="0.25"} 0 go_gc_duration_seconds{quantile="0.5"} 0 go_gc_duration_seconds{quantile="0.75"} 0 go_gc_duration_seconds{quantile="1"} 0 go_gc_duration_seconds_sum 0 go_gc_duration_seconds_count 0

HELP go_goroutines Number of goroutines that currently exist.

TYPE go_goroutines gauge

go_goroutines 10

HELP go_memstats_alloc_bytes Number of bytes allocated and still in use.

TYPE go_memstats_alloc_bytes gauge

go_memstats_alloc_bytes 1.035296e+06

HELP go_memstats_alloc_bytes_total Total number of bytes allocated, even if freed.

TYPE go_memstats_alloc_bytes_total counter

go_memstats_alloc_bytes_total 1.035296e+06

HELP go_memstats_buck_hash_sys_bytes Number of bytes used by the profiling bucket hash table.

TYPE go_memstats_buck_hash_sys_bytes gauge

go_memstats_buck_hash_sys_bytes 1.442917e+06

HELP go_memstats_frees_total Total number of frees.

TYPE go_memstats_frees_total counter

go_memstats_frees_total 306

HELP go_memstats_gc_cpu_fraction The fraction of this program's available CPU time used by the GC since the program started.

TYPE go_memstats_gc_cpu_fraction gauge

go_memstats_gc_cpu_fraction 0

HELP go_memstats_gc_sys_bytes Number of bytes used for garbage collection system metadata.

TYPE go_memstats_gc_sys_bytes gauge

go_memstats_gc_sys_bytes 137216

HELP go_memstats_heap_alloc_bytes Number of heap bytes allocated and still in use.

TYPE go_memstats_heap_alloc_bytes gauge

go_memstats_heap_alloc_bytes 1.035296e+06

HELP go_memstats_heap_idle_bytes Number of heap bytes waiting to be used.

TYPE go_memstats_heap_idle_bytes gauge

go_memstats_heap_idle_bytes 188416

HELP go_memstats_heap_inuse_bytes Number of heap bytes that are in use.

TYPE go_memstats_heap_inuse_bytes gauge

go_memstats_heap_inuse_bytes 1.581056e+06

HELP go_memstats_heap_objects Number of allocated objects.

TYPE go_memstats_heap_objects gauge

go_memstats_heap_objects 7655

HELP go_memstats_heap_released_bytes Number of heap bytes released to OS.

TYPE go_memstats_heap_released_bytes gauge

go_memstats_heap_released_bytes 0

HELP go_memstats_heap_sys_bytes Number of heap bytes obtained from system.

TYPE go_memstats_heap_sys_bytes gauge

go_memstats_heap_sys_bytes 1.769472e+06

HELP go_memstats_last_gc_time_seconds Number of seconds since 1970 of last garbage collection.

TYPE go_memstats_last_gc_time_seconds gauge

go_memstats_last_gc_time_seconds 0

HELP go_memstats_lookups_total Total number of pointer lookups.

TYPE go_memstats_lookups_total counter

go_memstats_lookups_total 23

HELP go_memstats_mallocs_total Total number of mallocs.

TYPE go_memstats_mallocs_total counter

go_memstats_mallocs_total 7961

HELP go_memstats_mcache_inuse_bytes Number of bytes in use by mcache structures.

TYPE go_memstats_mcache_inuse_bytes gauge

go_memstats_mcache_inuse_bytes 4800

HELP go_memstats_mcache_sys_bytes Number of bytes used for mcache structures obtained from system.

TYPE go_memstats_mcache_sys_bytes gauge

go_memstats_mcache_sys_bytes 16384

HELP go_memstats_mspan_inuse_bytes Number of bytes in use by mspan structures.

TYPE go_memstats_mspan_inuse_bytes gauge

go_memstats_mspan_inuse_bytes 22344

HELP go_memstats_mspan_sys_bytes Number of bytes used for mspan structures obtained from system.

TYPE go_memstats_mspan_sys_bytes gauge

go_memstats_mspan_sys_bytes 32768

HELP go_memstats_next_gc_bytes Number of heap bytes when next garbage collection will take place.

TYPE go_memstats_next_gc_bytes gauge

go_memstats_next_gc_bytes 4.473924e+06

HELP go_memstats_other_sys_bytes Number of bytes used for other system allocations.

TYPE go_memstats_other_sys_bytes gauge

go_memstats_other_sys_bytes 797843

HELP go_memstats_stack_inuse_bytes Number of bytes in use by the stack allocator.

TYPE go_memstats_stack_inuse_bytes gauge

go_memstats_stack_inuse_bytes 327680

HELP go_memstats_stack_sys_bytes Number of bytes obtained from system for stack allocator.

TYPE go_memstats_stack_sys_bytes gauge

go_memstats_stack_sys_bytes 327680

HELP go_memstats_sys_bytes Number of bytes obtained from system.

TYPE go_memstats_sys_bytes gauge

go_memstats_sys_bytes 4.52428e+06

HELP go_threads Number of OS threads created

TYPE go_threads gauge

go_threads 6

HELP http_request_duration_microseconds The HTTP request latencies in microseconds.

TYPE http_request_duration_microseconds summary

http_request_duration_microseconds{handler="prometheus",quantile="0.5"} NaN http_request_duration_microseconds{handler="prometheus",quantile="0.9"} NaN http_request_duration_microseconds{handler="prometheus",quantile="0.99"} NaN http_request_duration_microseconds_sum{handler="prometheus"} 0 http_request_duration_microseconds_count{handler="prometheus"} 0

HELP http_request_size_bytes The HTTP request sizes in bytes.

TYPE http_request_size_bytes summary

http_request_size_bytes{handler="prometheus",quantile="0.5"} NaN http_request_size_bytes{handler="prometheus",quantile="0.9"} NaN http_request_size_bytes{handler="prometheus",quantile="0.99"} NaN http_request_size_bytes_sum{handler="prometheus"} 0 http_request_size_bytes_count{handler="prometheus"} 0

HELP http_response_size_bytes The HTTP response sizes in bytes.

TYPE http_response_size_bytes summary

http_response_size_bytes{handler="prometheus",quantile="0.5"} NaN http_response_size_bytes{handler="prometheus",quantile="0.9"} NaN http_response_size_bytes{handler="prometheus",quantile="0.99"} NaN http_response_size_bytes_sum{handler="prometheus"} 0 http_response_size_bytes_count{handler="prometheus"} 0

HELP process_cpu_seconds_total Total user and system CPU time spent in seconds.

TYPE process_cpu_seconds_total counter

process_cpu_seconds_total 0

HELP process_max_fds Maximum number of open file descriptors.

TYPE process_max_fds gauge

process_max_fds 1024

HELP process_open_fds Number of open file descriptors.

TYPE process_open_fds gauge

process_open_fds 7

HELP process_resident_memory_bytes Resident memory size in bytes.

TYPE process_resident_memory_bytes gauge

process_resident_memory_bytes 4.562944e+06

HELP process_start_time_seconds Start time of the process since unix epoch in seconds.

TYPE process_start_time_seconds gauge

process_start_time_seconds 1.49915152041e+09

HELP process_virtual_memory_bytes Virtual memory size in bytes.

TYPE process_virtual_memory_bytes gauge

process_virtual_memory_bytes 1.1716608e+08

HELP solr_exporter_build_info A metric with a constant '1' value labeled by version, revision, branch, and goversion from which solr_exporter was built.

TYPE solr_exporter_build_info gauge

solr_exporter_build_info{branch="",goversion="go1.8",revision="",version=""} 1

HELP solr_up Was the Solr instance query successful?

TYPE solr_up gauge

solr_up 0

m4rcc commented 7 years ago

Here are some examples of the query you requested from the other issue which is closed:

"\/update": { "class": "org.apache.solr.handler.UpdateRequestHandler", "version": "6.1.0", "description": "Add documents using XML (with XSLT), CSV, JSON, or javabin", "src": null, "stats": { "handlerStart": 1499068544981, "requests": 6, "errors": 0, "serverErrors": 0, "clientErrors": 0, "timeouts": 0, "totalTime": 12510.539995, "avgRequestsPerSecond": 7.1776661231108e-5, "5minRateReqsPerSecond": 2.491011926622e-122, "15minRateReqsPerSecond": 9.7268405450372e-42, "avgTimePerRequest": 2085.0899991667, "medianRequestTime": 1623.069478, "75thPcRequestTime": 3646.34627, "95thPcRequestTime": 4115.616218, "99thPcRequestTime": 4115.616218, "999thPcRequestTime": 4115.616218

I see that "5minRateReqsPerSecond": 2.491011926622e-122, is FiveMinRateReqsPerSecond float64 . I don't have any NaN.

noony commented 7 years ago

Thanks I will push a fix this night.

noony commented 7 years ago

Do you tested with the last version @m4rcc ? It's fixed normally can you confirm ?

m4rcc commented 7 years ago

Hi @noony , i just tested now and it's working.

Thank you PS: I will test Grafana dashboard also.

noony commented 7 years ago

Thanks !