Supported Versions |
---|
1.5 or higher |
Introduction
CouchDB is an open-source document-oriented NoSQL database, implemented in Erlang. It uses multiple formats and protocols to store, transfer, and process data. CouchDB uses JSON to store data, JavaScript as its query language using MapReduce, and HTTP for an API.
Discovery with the agent
Collector Type : Agent
Category : Application Monitors
Application Name : CouchDB
Global Template Name : LINUX CouchDB Template
Parameters
Names | Default Value | Description |
---|---|---|
Protocol | http | The protocol to be used. |
Host IP Address | 127.0.0.1 | The host on which CouchDB is running. |
Port | 5984 | The port on which CouchDB is running. |
User Name | NA | The username of CouchDb. |
Password | NA | The password of CouchDB. |
Note: All field attributes are mandatory, use default values wherever applicable.
Collected Metrics
Metric Name | Display Name | Description |
---|---|---|
couchdb.databases_open | CouchDB Open Databases | Number of open databases. |
couchdb.cache_hits | CouchDB Cache Hits | Number of authentication cache hits. |
couchdb.cache_misses | CouchDB Cache Misses | Number of authentication cache misses. |
couchdb.database_reads | CouchDB Database Reads | Number of times a document was read from a database. |
couchdb.database_writes | CouchDB Database Writes | Number of times a database was changed. |
couchdb.open_fds | CouchDB Open FDs | Number of file descriptors CouchDB has open. |
couchdb.request_time | CouchDB Request Time | Length of a request inside CouchDB without MochiWeb. |
couchdb.httpd.requests | CouchDB HTTP Requests | Number of HTTP requests. |
couchdb.httpd.bulk_requests | CouchDB HTTP Bulk Requests | Number of bulk requests. |
couchdb.httpd.view_reads | CouchDB HTTP View Reads | Number of view reads. |
couchdb.httpd.clients_requesting_changes | CouchDB HTTP Clients Requesting Changes | Number of clients for continuous _changes. |
couchdb.httpd.temporary_view_reads | CouchDB HTTP Temporary View Reads | Number of temporary view reads. |
couchdb.httpd_request_methods_delete | CouchDB DELETE Requests | Number of HTTP DELETE requests. |
couchdb.httpd_request_methods_head | CouchDB HEAD Requests | Number of HTTP HEAD requests. |
couchdb.httpd_request_methods_post | CouchDB POST Requests | Number of HTTP POST requests. |
couchdb.httpd_request_methods_put | CouchDB PUT Requests | Number of HTTP PUT requests. |
couchdb.httpd_request_methods_get | CouchDB GET Requests | Number of HTTP GET requests. |
couchdb.httpd_request_methods_copy | CouchDB COPY Requests | Number of HTTP COPY requests. |
couchdb.httpd_status_codes.200 | CouchDB HTTP d200 Status | Number of HTTP 200 OK responses. |
couchdb.httpd_status_codes.201 | CouchDB HTTP d201 Status | Number of HTTP 201 Created responses. |
couchdb.httpd_status_codes.202 | CouchDB HTTP d202 Status | Number of HTTP 202 Accepted responses. |
couchdb.httpd_status_codes.301 | CouchDB HTTP d301 Status | Number of HTTP 301 Moved Permanently responses. |
couchdb.httpd_status_codes.304 | CouchDB HTTP d304 Status | Number of HTTP 304 Not Modified responses. |
couchdb.httpd_status_codes.400 | CouchDB HTTP d400 Status | Number of HTTP 400 Bad Request responses. |
couchdb.httpd_status_codes.401 | CouchDB HTTP d401 Status | Number of HTTP 401 Unauthorized responses. |
couchdb.httpd_status_codes.403 | CouchDB HTTP d403 Status | Number of HTTP 403 Forbidden responses. |
couchdb.httpd_status_codes.404 | CouchDB HTTP d404 Status | Number of HTTP 404 Not Found responses. |
couchdb.httpd_status_codes.405 | CouchDB HTTP d405 Status | Number of HTTP 405 Method Not Allowed responses. |
couchdb.httpd_status_codes.409 | CouchDB HTTP d409 Status | Number of HTTP 409 Conflict responses. |
couchdb.httpd_status_codes.412 | CouchDB HTTP d412 Status | Number of HTTP 412 Precondition Failed responses. |
couchdb.httpd_status_codes.500 | CouchDB HTTP d500 Status | Number of HTTP 500 Internal Server Error responses. |
couchdb.doc_count | CouchDB Doc Count | Number doc's in all dbs. |
couchdb.disk_size | CouchDB Disk Size | CouchDB-DiskSize. |
Discovery using the gateway
The administrator can deploy a gateway to support CouchDB agentless monitoring. The gateway establishes a connection to the database using the management profile, collects metrics from the templates, and starts monitoring.
To monitor CouchDB:
- Associate appropriate database credentials to the discovered database.
- Assign one or more database-specific global templates on the device.
Choose one of the following management mechanisms to discover CouchDB servers and add them to your inventory:
- WMI
- SSH
- SNMP
- (Optional) Manually add a database server to the infrastructure inventory.
- Select Infrastructure.
- Click the Settings icon.
- Select Resource > Add.
- In the Add Device window, enter the required Device Type and any additional fields you want.
- Click Save.
View resource metrics
The gateway monitors the application using the assigned templates and displays the results in a graphical format. To view resource metrics, click the desired Database Resource Name > Resource Details > Metrics.
Prerequisites
- Install gateway version 5.0.0 or higher.
- Map a suitable gateway management profile to a resource.
- Create credentials with type
HTTP
before assigning a template to a resource. The Port, Connection Time-out, and Is Secure values are not used to create credentials.
Troubleshooting
If the graphs are plotted incorrectly, verify that the resource is accessible and telnet connectivity:
ping <IPAddress>
telnet <IPAddress:Port>
Also, verify that you are using valid credentials for the resource.
Supported templates
Collector Type | Template Name |
---|---|
Gateway | CouchDB1 - Statistics |
CouchDB2 - Statistics | |
Agent | Linux - Apache CouchDB Monitors |
After selecting the templates, you can:
- Assign CouchDB templates from Setup or at the device level.
- Customize default configuration parameter values while assigning the template.
Resource template configuration parameters
Configuration Parameter | Description |
---|---|
Connection Time-out | The maximum time to connect to the database. The driver waits for the specified time before timing out due to connection failure. The default time is 15000 milliseconds(ms). |
Service Transport Type | The secure database end-point. The default type is In-secure. The connection is Secure when the data sent between the client and server is encrypted. |
Management Port | The port number where the database is running. The connection is made to the specified port if you specify the port and the database name. The default port is 5984. |
Application Type | The application type value to identify the adapter. For example, COUCHDB. Do not change the default application type value. |
Supported metrics
Metric | Metric Display Name | Unit | Description |
---|---|---|---|
couchdb1.active_tasks.replication.docs_read | couchdb1 active tasks replication docs read | number | Docs read while replicating |
couchdb1.active_tasks.replication.docs_written | couchdb1 active tasks replication docs written | number | Docs written while replicating |
couchdb1.active_tasks.replication.doc_write_failures | couchdb1 active tasks replication doc write failures | number | Failed docs written while replicating |
couchdb1.active_tasks.replication.missing_revisions_found | couchdb1 active tasks replication missing revisions found | number | Number of missing revisions |
couchdb1.active_tasks.replication.revisions_checked | couchdb1 active tasks replication revisions checked | number | Total revisions checked |
couchdb1.auth_cache_hits | couchdb1 auth cache hits | number | Number of authentication cache hits |
couchdb1.auth_cache_misses | couchdb1 auth cache misses | number | Number of authentication cache misses |
couchdb1.database_reads | couchdb1 database reads | number | Number of times a document was read from a database |
couchdb1.database_writes | couchdb1 database writes | number | Number of times a database was changed |
couchdb1.httpd.bulk_requests | couchdb1 httpd bulk requests | number | Number of bulk requests |
couchdb1.httpd.clients_requesting_changes | couchdb1 httpd clients requesting changes | number | Number of clients for continuous changes |
couchdb1.httpd.requests | couchdb1 httpd requests | number | Number of HTTP requests |
couchdb1.httpd.temporary_view_reads | couchdb1 httpd temporary view reads | number | Number of temporary view reads |
couchdb1.httpd.view_reads | couchdb1 httpd view reads | number | Number of view reads |
couchdb1.httpd_request_methods.COPY | couchdb1 httpd request methods COPY | number | Number of HTTP COPY requests |
couchdb1.httpd_request_methods.DELETE | couchdb1 httpd request methods DELETE | number | Number of HTTP DELETE requests |
couchdb1.httpd_request_methods.GET | couchdb1 httpd request methods GET | number | Number of HTTP GET requests |
couchdb1.httpd_request_methods.HEAD | couchdb1 httpd request methods HEAD | number | Number of HTTP HEAD requests |
couchdb1.httpd_request_methods.POST | couchdb1 httpd request methods POST | number | Number of HTTP POST requests |
couchdb1.httpd_request_methods.PUT | couchdb1 httpd request methods PUT | number | Number of HTTP PUT requests |
couchdb1.httpd_status_codes.200 | couchdb1 httpd status codes 200 | number | Number of HTTP 200 OK responses |
couchdb1.httpd_status_codes.201 | couchdb1 httpd status codes 201 | number | Number of HTTP 201 Created responses |
couchdb1.httpd_status_codes.202 | couchdb1 httpd status codes 202 | number | Number of HTTP 202 Accepted responses |
couchdb1.httpd_status_codes.301 | couchdb1 httpd status codes 301 | number | Number of HTTP 301 Moved Permanently responses |
couchdb1.httpd_status_codes.304 | couchdb1 httpd status codes 304 | number | Number of HTTP 304 Not Modified responses |
couchdb1.httpd_status_codes.400 | couchdb1 httpd status codes 400 | number | Number of HTTP 400 Bad Request responses |
couchdb1.httpd_status_codes.401 | couchdb1 httpd status codes 401 | number | Number of HTTP 401 Unauthorized responses |
couchdb1.httpd_status_codes.403 | couchdb1 httpd status codes 403 | number | Number of HTTP 403 Forbidden responses |
couchdb1.httpd_status_codes.404 | couchdb1 httpd status codes 404 | number | Number of HTTP 404 Not Found responses |
couchdb1.httpd_status_codes.405 | couchdb1 httpd status codes 405 | number | Number of HTTP 405 Method Not Allowed responses |
couchdb1.httpd_status_codes.409 | couchdb1 httpd status codes 409 | number | Number of HTTP 409 Conflict responses |
couchdb1.httpd_status_codes.412 | couchdb1 httpd status codes 412 | number | Number of HTTP 412 Precondition Failed responses |
couchdb1.httpd_status_codes.500 | couchdb1 httpd status codes 500 | number | Number of HTTP 500 Internal Server Error responses |
couchdb1.httpd_status_codes.501 | couchdb1 httpd status codes 501 | number | Number of HTTP 501 Not Implemented responses |
couchdb1.open_os_files | couchdb1 open os files | number | Number of file descriptors CouchDB has open |
couchdb1.open_databases | couchdb1 open databases | number | Number of open databases |
couchdb1.request_time | couchdb1 request time | millisecond | Length of a request inside CouchDB without MochiWeb |