10.2.16. Configuration¶
The CouchDB Server Configuration API provide an interface to query and update the various configuration values within a running CouchDB instance.
/_node/{node-name}/_config
¶
-
GET
/_node/{node-name}/_config
¶ Returns the entire CouchDB server configuration as a JSON structure. The structure is organized by different configuration sections, with individual values.
Request Headers: - Accept –
- application/json
- text/plain
Response Headers: - Content-Type –
- application/json
- text/plain; charset=utf-8
Status Codes: - 200 OK – Request completed successfully
- 401 Unauthorized – CouchDB Server Administrator privileges required
Request
GET /_node/nonode@nohost/_config HTTP/1.1 Accept: application/json Host: localhost:5984
Response:
HTTP/1.1 200 OK Cache-Control: must-revalidate Content-Length: 4148 Content-Type: application/json Date: Sat, 10 Aug 2013 12:01:42 GMT Server: CouchDB (Erlang/OTP) { "attachments": { "compressible_types": "text/*, application/javascript, application/json, application/xml", "compression_level": "8" }, "couchdb": { "users_db_suffix": "_users", "database_dir": "/var/lib/couchdb", "delayed_commits": "true", "max_attachment_chunk_size": "4294967296", "max_dbs_open": "100", "os_process_timeout": "5000", "uri_file": "/var/lib/couchdb/couch.uri", "util_driver_dir": "/usr/lib64/couchdb/erlang/lib/couch-1.5.0/priv/lib", "view_index_dir": "/var/lib/couchdb" }, "chttpd": { "backlog": "512", "bind_address": "0.0.0.0", "docroot": "./share/www", "port": "5984", "require_valid_user": "false", "socket_options": "[{recbuf, 262144}, {sndbuf, 262144}, {nodelay, true}]" }, "daemons": { "auth_cache": "{couch_auth_cache, start_link, []}", "db_update_notifier": "{couch_db_update_notifier_sup, start_link, []}", "external_manager": "{couch_external_manager, start_link, []}", "httpd": "{couch_httpd, start_link, []}", "query_servers": "{couch_query_servers, start_link, []}", "stats_aggregator": "{couch_stats_aggregator, start, []}", "stats_collector": "{couch_stats_collector, start, []}", "uuids": "{couch_uuids, start, []}", "view_manager": "{couch_view, start_link, []}" }, "httpd": { "allow_jsonp": "false", "authentication_handlers": "{couch_httpd_auth, cookie_authentication_handler}, {couch_httpd_auth, default_authentication_handler}", "bind_address": "192.168.0.2", "default_handler": "{couch_httpd_db, handle_request}", "max_connections": "2048", "port": "5984", "secure_rewrites": "true", "vhost_global_handlers": "_utils, _uuids, _session, _users" }, "httpd_db_handlers": { "_changes": "{couch_httpd_db, handle_changes_req}", "_compact": "{couch_httpd_db, handle_compact_req}", "_design": "{couch_httpd_db, handle_design_req}", "_temp_view": "{couch_httpd_view, handle_temp_view_req}", "_view_cleanup": "{couch_httpd_db, handle_view_cleanup_req}" }, "httpd_design_handlers": { "_info": "{couch_httpd_db, handle_design_info_req}", "_list": "{couch_httpd_show, handle_view_list_req}", "_rewrite": "{couch_httpd_rewrite, handle_rewrite_req}", "_show": "{couch_httpd_show, handle_doc_show_req}", "_update": "{couch_httpd_show, handle_doc_update_req}", "_view": "{couch_httpd_view, handle_view_req}" }, "httpd_global_handlers": { "/": "{couch_httpd_misc_handlers, handle_welcome_req, <<\"Welcome\">>}", "_active_tasks": "{couch_httpd_misc_handlers, handle_task_status_req}", "_all_dbs": "{couch_httpd_misc_handlers, handle_all_dbs_req}", "_config": "{couch_httpd_misc_handlers, handle_config_req}", "_replicate": "{couch_httpd_misc_handlers, handle_replicate_req}", "_restart": "{couch_httpd_misc_handlers, handle_restart_req}", "_session": "{couch_httpd_auth, handle_session_req}", "_stats": "{couch_httpd_stats_handlers, handle_stats_req}", "_utils": "{couch_httpd_misc_handlers, handle_utils_dir_req, \"/usr/share/couchdb/www\"}", "_uuids": "{couch_httpd_misc_handlers, handle_uuids_req}", "favicon.ico": "{couch_httpd_misc_handlers, handle_favicon_req, \"/usr/share/couchdb/www\"}" }, "log": { "writer": "file", "file": "/var/log/couchdb/couch.log", "include_sasl": "true", "level": "info" }, "query_server_config": { "reduce_limit": "true" }, "query_servers": { "javascript": "/usr/bin/couchjs /usr/share/couchdb/server/main.js" }, "replicator": { "max_http_pipeline_size": "10", "max_http_sessions": "10" }, "stats": { "rate": "1000", "samples": "[0, 60, 300, 900]" }, "uuids": { "algorithm": "utc_random" } }
- Accept –
_node/{node-name}/_config/section
¶
-
GET
/_node/{node-name}/_config/{section}
¶ Gets the configuration structure for a single section.
Parameters: - section – Configuration section name
Request Headers: - Accept –
- application/json
- text/plain
Response Headers: - Content-Type –
- application/json
- text/plain; charset=utf-8
Status Codes: - 200 OK – Request completed successfully
- 401 Unauthorized – CouchDB Server Administrator privileges required
Request:
GET /_node/nonode@nohost/_config/httpd HTTP/1.1 Accept: application/json Host: localhost:5984
Response:
HTTP/1.1 200 OK Cache-Control: must-revalidate Content-Length: 444 Content-Type: application/json Date: Sat, 10 Aug 2013 12:10:40 GMT Server: CouchDB (Erlang/OTP) { "allow_jsonp": "false", "authentication_handlers": "{couch_httpd_auth, cookie_authentication_handler}, {couch_httpd_auth, default_authentication_handler}", "bind_address": "127.0.0.1", "default_handler": "{couch_httpd_db, handle_request}", "enable_cors": "false", "port": "5984", "secure_rewrites": "true", "vhost_global_handlers": "_utils, _uuids, _session, _users" }
/_node/node/_config/section/key
¶
-
GET
/_node/{node-name}/_config/{section}/{key}
¶ Gets a single configuration value from within a specific configuration section.
Parameters: - section – Configuration section name
- key – Configuration option name
Request Headers: - Accept –
- application/json
- text/plain
Response Headers: - Content-Type –
- application/json
- text/plain; charset=utf-8
Status Codes: - 200 OK – Request completed successfully
- 401 Unauthorized – CouchDB Server Administrator privileges required
Request:
GET /_node/nonode@nohost/_config/log/level HTTP/1.1 Accept: application/json Host: localhost:5984
Response:
HTTP/1.1 200 OK Cache-Control: must-revalidate Content-Length: 8 Content-Type: application/json Date: Sat, 10 Aug 2013 12:12:59 GMT Server: CouchDB (Erlang/OTP) "debug"
Note
The returned value will be the JSON of the value, which may be a string or numeric value, or an array or object. Some client environments may not parse simple strings or numeric values as valid JSON.
-
PUT
/_node/{node-name}/_config/{section}/{key}
¶ Updates a configuration value. The new value should be supplied in the request body in the corresponding JSON format. If you are setting a string value, you must supply a valid JSON string. In response CouchDB sends old value for target section key.
Parameters: - section – Configuration section name
- key – Configuration option name
Request Headers: - Accept –
- application/json
- text/plain
- Content-Type – application/json
Response Headers: - Content-Type –
- application/json
- text/plain; charset=utf-8
Status Codes: - 200 OK – Request completed successfully
- 400 Bad Request – Invalid JSON request body
- 401 Unauthorized – CouchDB Server Administrator privileges required
- 500 Internal Server Error – Error setting configuration
Request:
PUT /_node/nonode@nohost/_config/log/level HTTP/1.1 Accept: application/json Content-Length: 7 Content-Type: application/json Host: localhost:5984 "info"
Response:
HTTP/1.1 200 OK Cache-Control: must-revalidate Content-Length: 8 Content-Type: application/json Date: Sat, 10 Aug 2013 12:12:59 GMT Server: CouchDB (Erlang/OTP) "debug"
-
DELETE
/_node/{node-name}/_config/{section}/{key}
¶ Deletes a configuration value. The returned JSON will be the value of the configuration parameter before it was deleted.
Parameters: - section – Configuration section name
- key – Configuration option name
Request Headers: - Accept –
- application/json
- text/plain
Response Headers: - Content-Type –
- application/json
- text/plain; charset=utf-8
Status Codes: - 200 OK – Request completed successfully
- 401 Unauthorized – CouchDB Server Administrator privileges required
- 404 Not Found – Specified configuration option not found
Request:
DELETE /_node/nonode@nohost/_config/log/level HTTP/1.1 Accept: application/json Host: localhost:5984
Response:
HTTP/1.1 200 OK Cache-Control: must-revalidate Content-Length: 7 Content-Type: application/json Date: Sat, 10 Aug 2013 12:29:03 GMT Server: CouchDB (Erlang/OTP) "info"