CouchDB - Monitoring Extension

CouchDB Monitoring Extension


This extension works only with the standalone machine agent.


Use Case


Apache CouchDB, commonly referred to as CouchDB, is an open source database that focuses on ease of use and on being "a database that completely embraces the web." It is a NoSQL database that uses JSON to store data, uses JavaScript as its query language using MapReduce, and uses HTTP for an API. The CouchDB monitoring extension gathers metrics for the specified hosts that have couchDB installed.



  1. Download and unzip the CouchDBMonitor zip file into the <machineagent install dir>/monitors directory.
  2. (OPTIONAL) Open <machineagent install dir>/monitors/CouchDBMonitor/monitor.xml and configure the couchDB parameters.
        <argument name="hosts-config-path" is-required="true" default-value="monitors/CouchDBMonitor/conf/HostsConfig.xml" />          
  3. Open <machineagent install dir>/monitors/CouchDBMonitor/conf/HostsConfig.xml and configure the CouchDB hosts. 

    The host id, port, username, and password need to be configured for each host. Here is a sample configuration for one host:

        <Host id="localhost" port="5984" username="username" password="password"/>          
  4. Restart the machine agent.
  5. In the AppDynamics Metric Browser, look for: Application Infrastructure Performance | <Tier> | Custom Metrics | CouchDB




Metric Category: couchdb


Metric NameDescription
database_writesNumber of times a database was changed
database_readsNumber of times a document was read from a database
open_databasesNumber of open databases
open_os_filesNumber of file descriptors CouchDB has open
request_timeLength of a request (ms) inside CouchDB


Metric Category: httpd


Metric NameDescription
bulk_requestsNumber of bulk requests
requestsNumber of HTTP requests
temporary_view_readsNumber of temporary view reads
view_readsNumber of view reads


Metric Category: httpd_request_methods


Metric NameDescription
COPYNumber of HTTP COPY requests
DELETENumber of HTTP DELETE requests
GETNumber of HTTP GET requests
HEADNumber of HTTP HEAD requests
MOVENumber of HTTP MOVE requests
POSTNumber of HTTP POST requests
PUTNumber of HTTP PUT requests


Metric Category: httpd_status_codes


Metric NameDescription
201Number of HTTP 200 OK responses
201Number of HTTP 201 Created responses
202Number of HTTP 202 Accepted responses
301Number of HTTP 301 Moved Permanently responses
304Number of HTTP 304 Not Modified responses
400Number of HTTP 400 Bad Request responses
401Number of HTTP 401 Unauthorized responses
403Number of HTTP 403 Forbidden responses
404Number of HTTP 404 Not Found responses
405Number of HTTP 405 Method Not Allowed responses
409Number of HTTP 409 Conflict responses
412Number of HTTP 412 Precondition Failed responses
500Number of HTTP 500 Internal Server Error responses


Custom Dashboard





Always feel free to fork and contribute any changes directly via GitHub.




For any support questions, please contact






Last Update:


CouchDB Versions Tested on:



 Release Notes:

1.0.1 Fixed code for Basic Authentication and Mavenized the extension