Telegraf: Telegraf reporting zeros for Couchdb 2.1.1 stats endpoint

Created on 23 Jul 2018  路  17Comments  路  Source: influxdata/telegraf

Relevant telegraf.conf:

Read CouchDB Stats from one or more servers
[[inputs.couchdb]]
Works with CouchDB stats endpoints out of the box
Multiple HOSTs from which to read CouchDB stats:
hosts = ["http://###.###.###.###:5986/_stats"]
internal IP address commented out for config sharing

System info:

[Include Telegraf version, operating system name, and other relevant details]

  • Telegraf v1.7.2 (git: release-1.7 c6feb056)
  • Linux MYHOSTNAME 2.6.32-696.30.1.el6.x86_64 #1 SMP Tue May 22 03:28:18 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Steps to reproduce:

  1. Installed Telegraf
  2. Configured Couchdb Plugin

Expected behavior:

Telegraf should report values as seen on stats page for a node

Actual behavior:

When running Telegraf test, all key values returned are 0.

Additional info:

No error messages are seen in the log when running in debug mode.

bug

All 17 comments

Thanks for the submission, can you run telegraf --input-filter=couchdb --test and paste the output?

couchdb,host=c1-prod-couch04,server=http://10.2.20.141:5986/_stats couchdb_auth_cache_hits_current=0,couchdb_auth_cache_hits_max=0,couchdb_auth_cache_hits_mean=0,couchdb_auth_cache_hits_min=0,couchdb_auth_cache_hits_stddev=0,couchdb_auth_cache_hits_sum=0,couchdb_auth_cache_misses_current=0,couchdb_auth_cache_misses_max=0,couchdb_auth_cache_misses_mean=0,couchdb_auth_cache_misses_min=0,couchdb_auth_cache_misses_stddev=0,couchdb_auth_cache_misses_sum=0,couchdb_database_reads_current=0,couchdb_database_reads_max=0,couchdb_database_reads_mean=0,couchdb_database_reads_min=0,couchdb_database_reads_stddev=0,couchdb_database_reads_sum=0,couchdb_database_writes_current=0,couchdb_database_writes_max=0,couchdb_database_writes_mean=0,couchdb_database_writes_min=0,couchdb_database_writes_stddev=0,couchdb_database_writes_sum=0,couchdb_open_databases_current=0,couchdb_open_databases_max=0,couchdb_open_databases_mean=0,couchdb_open_databases_min=0,couchdb_open_databases_stddev=0,couchdb_open_databases_sum=0,couchdb_open_os_files_current=0,couchdb_open_os_files_max=0,couchdb_open_os_files_mean=0,couchdb_open_os_files_min=0,couchdb_open_os_files_stddev=0,couchdb_open_os_files_sum=0,couchdb_request_time_current=0,couchdb_request_time_max=0,couchdb_request_time_mean=0,couchdb_request_time_min=0,couchdb_request_time_stddev=0,couchdb_request_time_sum=0,httpd_bulk_requests_current=0,httpd_bulk_requests_max=0,httpd_bulk_requests_mean=0,httpd_bulk_requests_min=0,httpd_bulk_requests_stddev=0,httpd_bulk_requests_sum=0,httpd_clients_requesting_changes_current=0,httpd_clients_requesting_changes_max=0,httpd_clients_requesting_changes_mean=0,httpd_clients_requesting_changes_min=0,httpd_clients_requesting_changes_stddev=0,httpd_clients_requesting_changes_sum=0,httpd_request_methods_copy_current=0,httpd_request_methods_copy_max=0,httpd_request_methods_copy_mean=0,httpd_request_methods_copy_min=0,httpd_request_methods_copy_stddev=0,httpd_request_methods_copy_sum=0,httpd_request_methods_delete_current=0,httpd_request_methods_delete_max=0,httpd_request_methods_delete_mean=0,httpd_request_methods_delete_min=0,httpd_request_methods_delete_stddev=0,httpd_request_methods_delete_sum=0,httpd_request_methods_get_current=0,httpd_request_methods_get_max=0,httpd_request_methods_get_mean=0,httpd_request_methods_get_min=0,httpd_request_methods_get_stddev=0,httpd_request_methods_get_sum=0,httpd_request_methods_head_current=0,httpd_request_methods_head_max=0,httpd_request_methods_head_mean=0,httpd_request_methods_head_min=0,httpd_request_methods_head_stddev=0,httpd_request_methods_head_sum=0,httpd_request_methods_post_current=0,httpd_request_methods_post_max=0,httpd_request_methods_post_mean=0,httpd_request_methods_post_min=0,httpd_request_methods_post_stddev=0,httpd_request_methods_post_sum=0,httpd_request_methods_put_current=0,httpd_request_methods_put_max=0,httpd_request_methods_put_mean=0,httpd_request_methods_put_min=0,httpd_request_methods_put_stddev=0,httpd_request_methods_put_sum=0,httpd_requests_current=0,httpd_requests_max=0,httpd_requests_mean=0,httpd_requests_min=0,httpd_requests_stddev=0,httpd_requests_sum=0,httpd_status_codes_200_current=0,httpd_status_codes_200_max=0,httpd_status_codes_200_mean=0,httpd_status_codes_200_min=0,httpd_status_codes_200_stddev=0,httpd_status_codes_200_sum=0,httpd_status_codes_201_current=0,httpd_status_codes_201_max=0,httpd_status_codes_201_mean=0,httpd_status_codes_201_min=0,httpd_status_codes_201_stddev=0,httpd_status_codes_201_sum=0,httpd_status_codes_202_current=0,httpd_status_codes_202_max=0,httpd_status_codes_202_mean=0,httpd_status_codes_202_min=0,httpd_status_codes_202_stddev=0,httpd_status_codes_202_sum=0,httpd_status_codes_301_current=0,httpd_status_codes_301_max=0,httpd_status_codes_301_mean=0,httpd_status_codes_301_min=0,httpd_status_codes_301_stddev=0,httpd_status_codes_301_sum=0,httpd_status_codes_304_current=0,httpd_status_codes_304_max=0,httpd_status_codes_304_mean=0,httpd_status_codes_304_min=0,httpd_status_codes_304_stddev=0,httpd_status_codes_304_sum=0,httpd_status_codes_400_current=0,httpd_status_codes_400_max=0,httpd_status_codes_400_mean=0,httpd_status_codes_400_min=0,httpd_status_codes_400_stddev=0,httpd_status_codes_400_sum=0,httpd_status_codes_401_current=0,httpd_status_codes_401_max=0,httpd_status_codes_401_mean=0,httpd_status_codes_401_min=0,httpd_status_codes_401_stddev=0,httpd_status_codes_401_sum=0,httpd_status_codes_403_current=0,httpd_status_codes_403_max=0,httpd_status_codes_403_mean=0,httpd_status_codes_403_min=0,httpd_status_codes_403_stddev=0,httpd_status_codes_403_sum=0,httpd_status_codes_404_current=0,httpd_status_codes_404_max=0,httpd_status_codes_404_mean=0,httpd_status_codes_404_min=0,httpd_status_codes_404_stddev=0,httpd_status_codes_404_sum=0,httpd_status_codes_405_current=0,httpd_status_codes_405_max=0,httpd_status_codes_405_mean=0,httpd_status_codes_405_min=0,httpd_status_codes_405_stddev=0,httpd_status_codes_405_sum=0,httpd_status_codes_409_current=0,httpd_status_codes_409_max=0,httpd_status_codes_409_mean=0,httpd_status_codes_409_min=0,httpd_status_codes_409_stddev=0,httpd_status_codes_409_sum=0,httpd_status_codes_412_current=0,httpd_status_codes_412_max=0,httpd_status_codes_412_mean=0,httpd_status_codes_412_min=0,httpd_status_codes_412_stddev=0,httpd_status_codes_412_sum=0,httpd_status_codes_500_current=0,httpd_status_codes_500_max=0,httpd_status_codes_500_mean=0,httpd_status_codes_500_min=0,httpd_status_codes_500_stddev=0,httpd_status_codes_500_sum=0,httpd_temporary_view_reads_current=0,httpd_temporary_view_reads_max=0,httpd_temporary_view_reads_mean=0,httpd_temporary_view_reads_min=0,httpd_temporary_view_reads_stddev=0,httpd_temporary_view_reads_sum=0,httpd_view_reads_current=0,httpd_view_reads_max=0,httpd_view_reads_mean=0,httpd_view_reads_min=0,httpd_view_reads_stddev=0,httpd_view_reads_sum=0 1532358062000000000

Ok, are there any logs on your couch server? My next thought is maybe couch responds all zeros if there are insufficient permissions..

If I send a GET request to the endpoint for stats without any AUTH I get these.

{
"couchdb": {
"auth_cache_hits": {
"value": 2,
"type": "counter",
"desc": "number of authentication cache hits"
},
"auth_cache_misses": {
"value": 34085,
"type": "counter",
"desc": "number of authentication cache misses"
},
"collect_results_time": {
"value": {
"min": 0,
"max": 0,
"arithmetic_mean": 0,
"geometric_mean": 0,
"harmonic_mean": 0,
"median": 0,
"variance": 0,
"standard_deviation": 0,
"skewness": 0,
"kurtosis": 0,
"percentile": [
[
50,
0
],
[
75,
0
],
[
90,
0
],
[
95,
0
],
[
99,
0
],
[
999,
0
]
],
"histogram": [
[
0,
0
]
],
"n": 0
},
"type": "histogram",
"desc": "microsecond latency for calls to couch_db:collect_results/3"
},
"database_writes": {
"value": 23454,
"type": "counter",
"desc": "number of times a database was changed"
},
"database_reads": {
"value": 23410541,
"type": "counter",
"desc": "number of times a document was read from a database"
},
"db_open_time": {
"value": {
"min": 1.568,
"max": 3.235,
"arithmetic_mean": 2.380916666666667,
"geometric_mean": 2.2913991785455328,
"harmonic_mean": 2.2028473260218626,
"median": 2.318,
"variance": 0.44970262878787876,
"standard_deviation": 0.6705987092053479,
"skewness": -0.004099813378386124,
"kurtosis": -1.8544211611192534,
"percentile": [
[
50,
2.318
],
[
75,
2.915
],
[
90,
3.201
],
[
95,
3.201
],
[
99,
3.235
],
[
999,
3.235
]
],
"histogram": [
[
2.568,
7
],
[
3.568,
5
],
[
4.568,
0
]
],
"n": 12
},
"type": "histogram",
"desc": "milliseconds required to open a database"
},
"document_inserts": {
"value": 3846,
"type": "counter",
"desc": "number of documents inserted"
},
"document_writes": {
"value": 4392,
"type": "counter",
"desc": "number of document write operations"
},
"local_document_writes": {
"value": 3587,
"type": "counter",
"desc": "number of _local document write operations"
},
"httpd": {
"bulk_docs": {
"value": {
"min": 0,
"max": 0,
"arithmetic_mean": 0,
"geometric_mean": 0,
"harmonic_mean": 0,
"median": 0,
"variance": 0,
"standard_deviation": 0,
"skewness": 0,
"kurtosis": 0,
"percentile": [
[
50,
0
],
[
75,
0
],
[
90,
0
],
[
95,
0
],
[
99,
0
],
[
999,
0
]
],
"histogram": [
[
0,
0
]
],
"n": 0
},
"type": "histogram",
"desc": "distribution of the number of docs in _bulk_docs requests"
},
"bulk_requests": {
"value": 707,
"type": "counter",
"desc": "number of bulk requests"
},
"requests": {
"value": 34195,
"type": "counter",
"desc": "number of HTTP requests"
},
"temporary_view_reads": {
"value": 0,
"type": "counter",
"desc": "number of temporary view reads"
},
"view_reads": {
"value": 2220,
"type": "counter",
"desc": "number of view reads"
},
"clients_requesting_changes": {
"value": 0,
"type": "counter",
"desc": "number of clients for continuous _changes"
},
"aborted_requests": {
"value": 0,
"type": "counter",
"desc": "number of aborted requests"
}
},
"httpd_request_methods": {
"COPY": {
"value": 0,
"type": "counter",
"desc": "number of HTTP COPY requests"
},
"DELETE": {
"value": 160,
"type": "counter",
"desc": "number of HTTP DELETE requests"
},
"GET": {
"value": 6386,
"type": "counter",
"desc": "number of HTTP GET requests"
},
"HEAD": {
"value": 316,
"type": "counter",
"desc": "number of HTTP HEAD requests"
},
"OPTIONS": {
"value": 0,
"type": "counter",
"desc": "number of HTTP OPTIONS requests"
},
"POST": {
"value": 26853,
"type": "counter",
"desc": "number of HTTP POST requests"
},
"PUT": {
"value": 480,
"type": "counter",
"desc": "number of HTTP PUT requests"
}
},
"httpd_status_codes": {
"200": {
"value": 23194,
"type": "counter",
"desc": "number of HTTP 200 OK responses"
},
"201": {
"value": 1550,
"type": "counter",
"desc": "number of HTTP 201 Created responses"
},
"202": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 202 Accepted responses"
},
"204": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 204 No Content responses"
},
"206": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 206 Partial Content"
},
"301": {
"value": 1,
"type": "counter",
"desc": "number of HTTP 301 Moved Permanently responses"
},
"302": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 302 Found responses"
},
"304": {
"value": 7,
"type": "counter",
"desc": "number of HTTP 304 Not Modified responses"
},
"400": {
"value": 3,
"type": "counter",
"desc": "number of HTTP 400 Bad Request responses"
},
"401": {
"value": 44,
"type": "counter",
"desc": "number of HTTP 401 Unauthorized responses"
},
"403": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 403 Forbidden responses"
},
"404": {
"value": 9147,
"type": "counter",
"desc": "number of HTTP 404 Not Found responses"
},
"405": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 405 Method Not Allowed responses"
},
"406": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 406 Not Acceptable responses"
},
"409": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 409 Conflict responses"
},
"412": {
"value": 30,
"type": "counter",
"desc": "number of HTTP 412 Precondition Failed responses"
},
"413": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 413 Request Entity Too Long responses"
},
"414": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 414 Request URI Too Long responses"
},
"415": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 415 Unsupported Media Type responses"
},
"416": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 416 Requested Range Not Satisfiable responses"
},
"417": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 417 Expectation Failed responses"
},
"500": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 500 Internal Server Error responses"
},
"501": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 501 Not Implemented responses"
},
"503": {
"value": 0,
"type": "counter",
"desc": "number of HTTP 503 Service unavailable responses"
}
},
"open_databases": {
"value": 500,
"type": "counter",
"desc": "number of open databases"
},
"open_os_files": {
"value": 525,
"type": "counter",
"desc": "number of file descriptors CouchDB has open"
},
"request_time": {
"value": {
"min": 0,
"max": 0,
"arithmetic_mean": 0,
"geometric_mean": 0,
"harmonic_mean": 0,
"median": 0,
"variance": 0,
"standard_deviation": 0,
"skewness": 0,
"kurtosis": 0,
"percentile": [
[
50,
0
],
[
75,
0
],
[
90,
0
],
[
95,
0
],
[
99,
0
],
[
999,
0
]
],
"histogram": [
[
0,
0
]
],
"n": 0
},
"type": "histogram",
"desc": "length of a request inside CouchDB without MochiWeb"
},
"couch_server": {
"lru_skip": {
"value": 21002,
"type": "counter",
"desc": "number of couch_server LRU operations skipped"
}
},
"query_server": {
"vdu_rejects": {
"value": 0,
"type": "counter",
"desc": "number of rejections by validate_doc_update function"
},
"vdu_process_time": {
"value": {
"min": 0,
"max": 0,
"arithmetic_mean": 0,
"geometric_mean": 0,
"harmonic_mean": 0,
"median": 0,
"variance": 0,
"standard_deviation": 0,
"skewness": 0,
"kurtosis": 0,
"percentile": [
[
50,
0
],
[
75,
0
],
[
90,
0
],
[
95,
0
],
[
99,
0
],
[
999,
0
]
],
"histogram": [
[
0,
0
]
],
"n": 0
},
"type": "histogram",
"desc": "duration of validate_doc_update function calls"
}
},
"mrview": {
"map_doc": {
"value": 219,
"type": "counter",
"desc": "number of documents mapped in the view server"
},
"emits": {
"value": 228,
"type": "counter",
"desc": "number of invocations of `emit' in map functions in the view server"
}
},
"dbinfo": {
"value": {
"min": 0,
"max": 0,
"arithmetic_mean": 0,
"geometric_mean": 0,
"harmonic_mean": 0,
"median": 0,
"variance": 0,
"standard_deviation": 0,
"skewness": 0,
"kurtosis": 0,
"percentile": [
[
50,
0
],
[
75,
0
],
[
90,
0
],
[
95,
0
],
[
99,
0
],
[
999,
0
]
],
"histogram": [
[
0,
0
]
],
"n": 0
},
"type": "histogram",
"desc": "distribution of latencies for calls to retrieve DB info"
}
},
"pread": {
"exceed_eof": {
"value": 0,
"type": "counter",
"desc": "number of the attempts to read beyond end of db file"
},
"exceed_limit": {
"value": 0,
"type": "counter",
"desc": "number of the attempts to read beyond set limit"
}
},
"couch_log": {
"level": {
"alert": {
"value": 0,
"type": "counter",
"desc": "number of logged alert messages"
},
"critical": {
"value": 0,
"type": "counter",
"desc": "number of logged critical messages"
},
"debug": {
"value": 0,
"type": "counter",
"desc": "number of logged debug messages"
},
"emergency": {
"value": 0,
"type": "counter",
"desc": "number of logged emergency messages"
},
"error": {
"value": 0,
"type": "counter",
"desc": "number of logged error messages"
},
"info": {
"value": 0,
"type": "counter",
"desc": "number of logged info messages"
},
"notice": {
"value": 0,
"type": "counter",
"desc": "number of logged notice messages"
},
"warning": {
"value": 0,
"type": "counter",
"desc": "number of logged warning messages"
}
}
},
"fabric": {
"worker": {
"timeouts": {
"value": 1,
"type": "counter",
"desc": "number of worker timeouts"
}
},
"open_shard": {
"timeouts": {
"value": 38,
"type": "counter",
"desc": "number of open shard timeouts"
}
},
"read_repairs": {
"success": {
"value": 9822,
"type": "counter",
"desc": "number of successful read repair operations"
},
"failure": {
"value": 0,
"type": "counter",
"desc": "number of failed read repair operations"
}
},
"doc_update": {
"errors": {
"value": 1,
"type": "counter",
"desc": "number of document update errors"
},
"mismatched_errors": {
"value": 0,
"type": "counter",
"desc": "number of document update errors with multiple error types"
},
"write_quorum_errors": {
"value": 0,
"type": "counter",
"desc": "number of write quorum errors"
}
}
},
"global_changes": {
"db_writes": {
"value": 0,
"type": "counter",
"desc": "number of db writes performed by global changes"
},
"event_doc_conflict": {
"value": 0,
"type": "counter",
"desc": "number of conflicted event docs encountered by global changes"
},
"listener_pending_updates": {
"value": 0,
"type": "gauge",
"desc": "number of global changes updates pending writes in global_changes_listener"
},
"rpcs": {
"value": 3579,
"type": "counter",
"desc": "number of rpc operations performed by global_changes"
},
"server_pending_updates": {
"value": 0,
"type": "gauge",
"desc": "number of global changes updates pending writes in global_changes_server"
}
},
"mem3": {
"shard_cache": {
"eviction": {
"value": 306,
"type": "counter",
"desc": "number of shard cache evictions"
},
"hit": {
"value": 24695292,
"type": "counter",
"desc": "number of shard cache hits"
},
"miss": {
"value": 446,
"type": "counter",
"desc": "number of shard cache misses"
}
}
},
"rexi": {
"buffered": {
"value": 7,
"type": "counter",
"desc": "number of rexi messages buffered"
},
"down": {
"value": 66407,
"type": "counter",
"desc": "number of rexi_DOWN messages handled"
},
"dropped": {
"value": 0,
"type": "counter",
"desc": "number of rexi messages dropped from buffers"
},
"streams": {
"timeout": {
"init_stream": {
"value": 0,
"type": "counter",
"desc": "number of rexi stream initialization timeouts"
},
"stream": {
"value": 0,
"type": "counter",
"desc": "number of rexi stream timeouts"
},
"wait_for_ack": {
"value": 0,
"type": "counter",
"desc": "number of rexi stream timeouts while waiting for acks"
}
}
}
},
"couch_replicator": {
"changes_read_failures": {
"value": 0,
"type": "counter",
"desc": "number of failed replicator changes read failures"
},
"changes_reader_deaths": {
"value": 0,
"type": "counter",
"desc": "number of failed replicator changes readers"
},
"changes_manager_deaths": {
"value": 0,
"type": "counter",
"desc": "number of failed replicator changes managers"
},
"changes_queue_deaths": {
"value": 0,
"type": "counter",
"desc": "number of failed replicator changes work queues"
},
"checkpoints": {
"success": {
"value": 0,
"type": "counter",
"desc": "number of checkpoints successfully saves"
},
"failure": {
"value": 0,
"type": "counter",
"desc": "number of failed checkpoint saves"
}
},
"failed_starts": {
"value": 0,
"type": "counter",
"desc": "number of replications that have failed to start"
},
"requests": {
"value": 0,
"type": "counter",
"desc": "number of HTTP requests made by the replicator"
},
"responses": {
"failure": {
"value": 0,
"type": "counter",
"desc": "number of failed HTTP responses received by the replicator"
},
"success": {
"value": 0,
"type": "counter",
"desc": "number of successful HTTP responses received by the replicator"
}
},
"stream_responses": {
"failure": {
"value": 0,
"type": "counter",
"desc": "number of failed streaming HTTP responses received by the replicator"
},
"success": {
"value": 0,
"type": "counter",
"desc": "number of successful streaming HTTP responses received by the replicator"
}
},
"worker_deaths": {
"value": 0,
"type": "counter",
"desc": "number of failed replicator workers"
},
"workers_started": {
"value": 0,
"type": "counter",
"desc": "number of replicator workers started"
},
"cluster_is_stable": {
"value": 1,
"type": "gauge",
"desc": "1 if cluster is stable, 0 if unstable"
},
"db_scans": {
"value": 5,
"type": "counter",
"desc": "number of times replicator db scans have been started"
},
"docs": {
"dbs_created": {
"value": 0,
"type": "counter",
"desc": "number of db shard creations seen by replicator doc processor"
},
"dbs_deleted": {
"value": 0,
"type": "counter",
"desc": "number of db shard deletions seen by replicator doc processor"
},
"dbs_found": {
"value": 5,
"type": "counter",
"desc": "number of db shard found by replicator doc processor"
},
"db_changes": {
"value": 0,
"type": "counter",
"desc": "number of db changes processed by replicator doc processor"
},
"failed_state_updates": {
"value": 0,
"type": "counter",
"desc": "number of 'failed' state document updates"
},
"completed_state_updates": {
"value": 0,
"type": "counter",
"desc": "number of 'completed' state document updates"
}
},
"jobs": {
"adds": {
"value": 0,
"type": "counter",
"desc": "number of jobs added to replicator scheduler"
},
"duplicate_adds": {
"value": 0,
"type": "counter",
"desc": "number of duplicate jobs added to replicator scheduler"
},
"removes": {
"value": 0,
"type": "counter",
"desc": "number of jobs removed from replicator scheduler"
},
"starts": {
"value": 0,
"type": "counter",
"desc": "number of jobs started by replicator scheduler"
},
"stops": {
"value": 0,
"type": "counter",
"desc": "number of jobs stopped by replicator scheduler"
},
"crashes": {
"value": 0,
"type": "counter",
"desc": "number of job crashed noticed by replicator scheduler"
},
"running": {
"value": 0,
"type": "gauge",
"desc": "replicator scheduler running jobs"
},
"pending": {
"value": 0,
"type": "gauge",
"desc": "replicator scheduler pending jobs"
},
"crashed": {
"value": 0,
"type": "gauge",
"desc": "replicator scheduler crashed jobs"
},
"total": {
"value": 0,
"type": "gauge",
"desc": "total number of replicator scheduler jobs"
}
},
"connection": {
"acquires": {
"value": 0,
"type": "counter",
"desc": "number of times connections are shared"
},
"creates": {
"value": 0,
"type": "counter",
"desc": "number of connections created"
},
"releases": {
"value": 0,
"type": "counter",
"desc": "number of times ownership of a connection is released"
},
"owner_crashes": {
"value": 0,
"type": "counter",
"desc": "number of times a connection owner crashes while owning at least one connection"
},
"worker_crashes": {
"value": 0,
"type": "counter",
"desc": "number of times a worker unexpectedly terminates"
},
"closes": {
"value": 0,
"type": "counter",
"desc": "number of times a worker is gracefully shut down"
}
}
},
"ddoc_cache": {
"hit": {
"value": 296377,
"type": "counter",
"desc": "number of design doc cache hits"
},
"miss": {
"value": 2539806,
"type": "counter",
"desc": "number of design doc cache misses"
},
"recovery": {
"value": 0,
"type": "counter",
"desc": "number of design doc cache recoveries"
}
}
}

{
"couchdb": "Welcome",
"uuid": "2f39ba7c81d7b80888c9ba959154d007",
"version": "2.1.1",
"vendor": {
"name": "The Apache Software Foundation"
}
}

I have tried this on two different machine/nodes. The first JSON stats I sent was for a test/dev node and I can send stats from a production machine if you like.

No, database_reads is non-zero in your example db's stats output. How are the couch server's logs?

I am unsure of what you are asking, in regards to the server's logs.

If you are asking if Couch responds with a 200 from doing a telegraf test, then yes.

No, like the logs that couchdb itself generates, they may be in /var/log/couchdb/couch.log, but it depends on where it's been configured

There are no errors in the logs. When I do a telegraf -test, I can see in the couch logs where the _stats endpoint receives a GET request and responds with a 200. Other than that, there is only normal messages in there.

Anything new on this? Since this request, I have updated couchdb from 2.1.1 to 2.2.0.

Can you paste output from a GET to the same db node that your test telegraf is gathering from?

This?

{"couchdb":{"httpd":{"aborted_requests":{"value":0,"type":"counter","desc":"number of aborted requests"},"bulk_docs":{"value":{"min":0.0,"max":0.0,"arithmetic_mean":0.0,"geometric_mean":0.0,"harmonic_mean":0.0,"median":0.0,"variance":0.0,"standard_deviation":0.0,"skewness":0.0,"kurtosis":0.0,"percentile":[[50,0.0],[75,0.0],[90,0.0],[95,0.0],[99,0.0],[999,0.0]],"histogram":[[0,0]],"n":0},"type":"histogram","desc":"distribution of the number of docs in _bulk_docs requests"},"bulk_requests":{"value":2157,"type":"counter","desc":"number of bulk requests"},"requests":{"value":632657,"type":"counter","desc":"number of HTTP requests"},"temporary_view_reads":{"value":0,"type":"counter","desc":"number of temporary view reads"},"view_reads":{"value":6119,"type":"counter","desc":"number of view reads"},"clients_requesting_changes":{"value":0,"type":"counter","desc":"number of clients for continuous _changes"}},"dbinfo":{"value":{"min":0.0,"max":0.0,"arithmetic_mean":0.0,"geometric_mean":0.0,"harmonic_mean":0.0,"median":0.0,"variance":0.0,"standard_deviation":0.0,"skewness":0.0,"kurtosis":0.0,"percentile":[[50,0.0],[75,0.0],[90,0.0],[95,0.0],[99,0.0],[999,0.0]],"histogram":[[0,0]],"n":0},"type":"histogram","desc":"distribution of latencies for calls to retrieve DB info"},"auth_cache_hits":{"value":0,"type":"counter","desc":"number of authentication cache hits"},"auth_cache_misses":{"value":632649,"type":"counter","desc":"number of authentication cache misses"},"collect_results_time":{"value":{"min":0.0,"max":0.0,"arithmetic_mean":0.0,"geometric_mean":0.0,"harmonic_mean":0.0,"median":0.0,"variance":0.0,"standard_deviation":0.0,"skewness":0.0,"kurtosis":0.0,"percentile":[[50,0.0],[75,0.0],[90,0.0],[95,0.0],[99,0.0],[999,0.0]],"histogram":[[0,0]],"n":0},"type":"histogram","desc":"microsecond latency for calls to couch_db:collect_results/3"},"database_writes":{"value":278472,"type":"counter","desc":"number of times a database was changed"},"database_reads":{"value":768051,"type":"counter","desc":"number of times a document was read from a database"},"db_open_time":{"value":{"min":0.0,"max":0.0,"arithmetic_mean":0.0,"geometric_mean":0.0,"harmonic_mean":0.0,"median":0.0,"variance":0.0,"standard_deviation":0.0,"skewness":0.0,"kurtosis":0.0,"percentile":[[50,0.0],[75,0.0],[90,0.0],[95,0.0],[99,0.0],[999,0.0]],"histogram":[[0,0]],"n":0},"type":"histogram","desc":"milliseconds required to open a database"},"document_inserts":{"value":64785,"type":"counter","desc":"number of documents inserted"},"document_writes":{"value":372110,"type":"counter","desc":"number of document write operations"},"local_document_writes":{"value":252674,"type":"counter","desc":"number of _local document write operations"},"httpd_request_methods":{"COPY":{"value":0,"type":"counter","desc":"number of HTTP COPY requests"},"DELETE":{"value":59615,"type":"counter","desc":"number of HTTP DELETE requests"},"GET":{"value":314241,"type":"counter","desc":"number of HTTP GET requests"},"HEAD":{"value":73164,"type":"counter","desc":"number of HTTP HEAD requests"},"OPTIONS":{"value":0,"type":"counter","desc":"number of HTTP OPTIONS requests"},"POST":{"value":125361,"type":"counter","desc":"number of HTTP POST requests"},"PUT":{"value":60277,"type":"counter","desc":"number of HTTP PUT requests"}},"httpd_status_codes":{"200":{"value":507659,"type":"counter","desc":"number of HTTP 200 OK responses"},"201":{"value":63085,"type":"counter","desc":"number of HTTP 201 Created responses"},"202":{"value":0,"type":"counter","desc":"number of HTTP 202 Accepted responses"},"204":{"value":0,"type":"counter","desc":"number of HTTP 204 No Content responses"},"206":{"value":0,"type":"counter","desc":"number of HTTP 206 Partial Content"},"301":{"value":192,"type":"counter","desc":"number of HTTP 301 Moved Permanently responses"},"302":{"value":0,"type":"counter","desc":"number of HTTP 302 Found responses"},"304":{"value":2006,"type":"counter","desc":"number of HTTP 304 Not Modified responses"},"400":{"value":0,"type":"counter","desc":"number of HTTP 400 Bad Request responses"},"401":{"value":0,"type":"counter","desc":"number of HTTP 401 Unauthorized responses"},"403":{"value":0,"type":"counter","desc":"number of HTTP 403 Forbidden responses"},"404":{"value":89,"type":"counter","desc":"number of HTTP 404 Not Found responses"},"405":{"value":0,"type":"counter","desc":"number of HTTP 405 Method Not Allowed responses"},"406":{"value":0,"type":"counter","desc":"number of HTTP 406 Not Acceptable responses"},"409":{"value":0,"type":"counter","desc":"number of HTTP 409 Conflict responses"},"412":{"value":59625,"type":"counter","desc":"number of HTTP 412 Precondition Failed responses"},"413":{"value":0,"type":"counter","desc":"number of HTTP 413 Request Entity Too Long responses"},"414":{"value":0,"type":"counter","desc":"number of HTTP 414 Request URI Too Long responses"},"415":{"value":0,"type":"counter","desc":"number of HTTP 415 Unsupported Media Type responses"},"416":{"value":0,"type":"counter","desc":"number of HTTP 416 Requested Range Not Satisfiable responses"},"417":{"value":0,"type":"counter","desc":"number of HTTP 417 Expectation Failed responses"},"500":{"value":3,"type":"counter","desc":"number of HTTP 500 Internal Server Error responses"},"501":{"value":0,"type":"counter","desc":"number of HTTP 501 Not Implemented responses"},"503":{"value":0,"type":"counter","desc":"number of HTTP 503 Service unavailable responses"}},"open_databases":{"value":55,"type":"counter","desc":"number of open databases"},"open_os_files":{"value":123,"type":"counter","desc":"number of file descriptors CouchDB has open"},"request_time":{"value":{"min":0.0,"max":0.0,"arithmetic_mean":0.0,"geometric_mean":0.0,"harmonic_mean":0.0,"median":0.0,"variance":0.0,"standard_deviation":0.0,"skewness":0.0,"kurtosis":0.0,"percentile":[[50,0.0],[75,0.0],[90,0.0],[95,0.0],[99,0.0],[999,0.0]],"histogram":[[0,0]],"n":0},"type":"histogram","desc":"length of a request inside CouchDB without MochiWeb"},"couch_server":{"lru_skip":{"value":3431,"type":"counter","desc":"number of couch_server LRU operations skipped"}},"query_server":{"vdu_rejects":{"value":0,"type":"counter","desc":"number of rejections by validate_doc_update function"},"vdu_process_time":{"value":{"min":0.0,"max":0.0,"arithmetic_mean":0.0,"geometric_mean":0.0,"harmonic_mean":0.0,"median":0.0,"variance":0.0,"standard_deviation":0.0,"skewness":0.0,"kurtosis":0.0,"percentile":[[50,0.0],[75,0.0],[90,0.0],[95,0.0],[99,0.0],[999,0.0]],"histogram":[[0,0]],"n":0},"type":"histogram","desc":"duration of validate_doc_update function calls"}},"mrview":{"map_doc":{"value":3910012,"type":"counter","desc":"number of documents mapped in the view server"},"emits":{"value":228192,"type":"counter","desc":"number of invocations of `emit' in map functions in the view server"}}},"couch_log":{"level":{"alert":{"value":0,"type":"counter","desc":"number of logged alert messages"},"critical":{"value":0,"type":"counter","desc":"number of logged critical messages"},"debug":{"value":0,"type":"counter","desc":"number of logged debug messages"},"emergency":{"value":0,"type":"counter","desc":"number of logged emergency messages"},"error":{"value":77,"type":"counter","desc":"number of logged error messages"},"info":{"value":20074,"type":"counter","desc":"number of logged info messages"},"notice":{"value":732275,"type":"counter","desc":"number of logged notice messages"},"warning":{"value":300,"type":"counter","desc":"number of logged warning messages"}}},"pread":{"exceed_eof":{"value":0,"type":"counter","desc":"number of the attempts to read beyond end of db file"},"exceed_limit":{"value":0,"type":"counter","desc":"number of the attempts to read beyond set limit"}},"global_changes":{"db_writes":{"value":64187,"type":"counter","desc":"number of db writes performed by global changes"},"event_doc_conflict":{"value":62697,"type":"counter","desc":"number of conflicted event docs encountered by global changes"},"listener_pending_updates":{"value":0,"type":"gauge","desc":"number of global changes updates pending writes in global_changes_listener"},"rpcs":{"value":220383,"type":"counter","desc":"number of rpc operations performed by global_changes"},"server_pending_updates":{"value":0,"type":"gauge","desc":"number of global changes updates pending writes in global_changes_server"}},"rexi":{"buffered":{"value":2,"type":"counter","desc":"number of rexi messages buffered"},"down":{"value":18,"type":"counter","desc":"number of rexi_DOWN messages handled"},"dropped":{"value":0,"type":"counter","desc":"number of rexi messages dropped from buffers"},"streams":{"timeout":{"init_stream":{"value":0,"type":"counter","desc":"number of rexi stream initialization timeouts"},"stream":{"value":0,"type":"counter","desc":"number of rexi stream timeouts"},"wait_for_ack":{"value":0,"type":"counter","desc":"number of rexi stream timeouts while waiting for acks"}}}},"mem3":{"shard_cache":{"eviction":{"value":0,"type":"counter","desc":"number of shard cache evictions"},"hit":{"value":4868849,"type":"counter","desc":"number of shard cache hits"},"miss":{"value":10920,"type":"counter","desc":"number of shard cache misses"}}},"ddoc_cache":{"hit":{"value":49571,"type":"counter","desc":"number of design doc cache hits"},"miss":{"value":30611,"type":"counter","desc":"number of design doc cache misses"},"recovery":{"value":0,"type":"counter","desc":"number of design doc cache recoveries"}},"fabric":{"worker":{"timeouts":{"value":2,"type":"counter","desc":"number of worker timeouts"}},"open_shard":{"timeouts":{"value":4856,"type":"counter","desc":"number of open shard timeouts"}},"read_repairs":{"success":{"value":4988,"type":"counter","desc":"number of successful read repair operations"},"failure":{"value":0,"type":"counter","desc":"number of failed read repair operations"}},"doc_update":{"errors":{"value":12265,"type":"counter","desc":"number of document update errors"},"mismatched_errors":{"value":0,"type":"counter","desc":"number of document update errors with multiple error types"},"write_quorum_errors":{"value":229,"type":"counter","desc":"number of write quorum errors"}}},"couch_replicator":{"changes_read_failures":{"value":0,"type":"counter","desc":"number of failed replicator changes read failures"},"changes_reader_deaths":{"value":0,"type":"counter","desc":"number of failed replicator changes readers"},"changes_manager_deaths":{"value":0,"type":"counter","desc":"number of failed replicator changes managers"},"changes_queue_deaths":{"value":0,"type":"counter","desc":"number of failed replicator changes work queues"},"checkpoints":{"success":{"value":222,"type":"counter","desc":"number of checkpoints successfully saves"},"failure":{"value":0,"type":"counter","desc":"number of failed checkpoint saves"}},"failed_starts":{"value":0,"type":"counter","desc":"number of replications that have failed to start"},"requests":{"value":190626,"type":"counter","desc":"number of HTTP requests made by the replicator"},"responses":{"failure":{"value":0,"type":"counter","desc":"number of failed HTTP responses received by the replicator"},"success":{"value":161536,"type":"counter","desc":"number of successful HTTP responses received by the replicator"}},"stream_responses":{"failure":{"value":0,"type":"counter","desc":"number of failed streaming HTTP responses received by the replicator"},"success":{"value":0,"type":"counter","desc":"number of successful streaming HTTP responses received by the replicator"}},"worker_deaths":{"value":0,"type":"counter","desc":"number of failed replicator workers"},"workers_started":{"value":79500,"type":"counter","desc":"number of replicator workers started"},"cluster_is_stable":{"value":1,"type":"gauge","desc":"1 if cluster is stable, 0 if unstable"},"db_scans":{"value":2,"type":"counter","desc":"number of times replicator db scans have been started"},"docs":{"dbs_created":{"value":0,"type":"counter","desc":"number of db shard creations seen by replicator doc processor"},"dbs_deleted":{"value":0,"type":"counter","desc":"number of db shard deletions seen by replicator doc processor"},"dbs_found":{"value":18,"type":"counter","desc":"number of db shard found by replicator doc processor"},"db_changes":{"value":401659,"type":"counter","desc":"number of db changes processed by replicator doc processor"},"failed_state_updates":{"value":0,"type":"counter","desc":"number of 'failed' state document updates"},"completed_state_updates":{"value":19875,"type":"counter","desc":"number of 'completed' state document updates"}},"jobs":{"adds":{"value":19875,"type":"counter","desc":"number of jobs added to replicator scheduler"},"duplicate_adds":{"value":0,"type":"counter","desc":"number of duplicate jobs added to replicator scheduler"},"removes":{"value":0,"type":"counter","desc":"number of jobs removed from replicator scheduler"},"starts":{"value":19875,"type":"counter","desc":"number of jobs started by replicator scheduler"},"stops":{"value":0,"type":"counter","desc":"number of jobs stopped by replicator scheduler"},"crashes":{"value":0,"type":"counter","desc":"number of job crashed noticed by replicator scheduler"},"running":{"value":0,"type":"gauge","desc":"replicator scheduler running jobs"},"pending":{"value":0,"type":"gauge","desc":"replicator scheduler pending jobs"},"crashed":{"value":0,"type":"gauge","desc":"replicator scheduler crashed jobs"},"total":{"value":6,"type":"gauge","desc":"total number of replicator scheduler jobs"}},"connection":{"acquires":{"value":218819,"type":"counter","desc":"number of times connections are shared"},"creates":{"value":4972,"type":"counter","desc":"number of connections created"},"releases":{"value":223791,"type":"counter","desc":"number of times ownership of a connection is released"},"owner_crashes":{"value":0,"type":"counter","desc":"number of times a connection owner crashes while owning at least one connection"},"worker_crashes":{"value":0,"type":"counter","desc":"number of times a worker unexpectedly terminates"},"closes":{"value":4972,"type":"counter","desc":"number of times a worker is gracefully shut down"}}}}

Or did you want to returned headers?

Just in case you want those:

HTTP/1.1 200 OK
Cache-Control: must-revalidate
Content-Length: 14118
Content-Type: application/json
Date: Wed, 22 Aug 2018 17:49:25 GMT
Server: CouchDB/2.2.0 (Erlang OTP/19)

Ok. So it turns out that telegraf doesn't error if couchdb responds unsuccessfully. The cause of the unsuccessful response is because Couchdb moved the /_stats route to /_node/_local/_stats for 2.0 and changed the api response, so you are getting 0s as most of the fields don't exist.

Ok, so basically, the couchdb add-on for telegraf will not work, until there has been an update to the code, to be compatible with Couchdb 2.X?

Was this page helpful?
0 / 5 - 0 ratings