Spec-Zone.ru › CouchDB 3.5

Конфигурация

API конфигурации сервера CouchDB предоставляет интерфейс для просмотра и обновления различных значений конфигурации работающего экземпляра CouchDB.

Доступ к конфигурации локального узла

Строка _local служит псевдонимом имени локального узла, поэтому во всех URL-адресах конфигурации {node-name} можно заменить на _local, чтобы работать с конфигурацией локального узла.

/_node/{node-name}/_config

GET /_node/{node-name}/_config

Возвращает полную конфигурацию сервера CouchDB в виде структуры JSON. Структура организована по различным разделам конфигурации, содержащим отдельные значения.

Заголовки запроса:
  • Accept –

    • application/json

    • text/plain

Заголовки ответа:
  • Content-Type –

    • application/json

    • text/plain; charset=utf-8

Коды состояния:
  • 200 OK – Запрос успешно выполнен

  • 401 Unauthorized – Требуются права администратора сервера CouchDB

  • 403 Forbidden – Недостаточно прав / Слишком много запросов с недействительными учетными данными

Запрос

GET /_node/nonode@nohost/_config HTTP/1.1
Accept: application/json
Host: localhost:5984

Ответ:

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",
        "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": {
        "allow_jsonp": "false",
        "bind_address": "0.0.0.0",
        "port": "5984",
        "require_valid_user": "false",
        "socket_options": "[{sndbuf, 262144}, {nodelay, true}]",
        "server_options": "[{recbuf, undefined}, {acceptor_pool_size, 32}, {max, 65536}]",
        "secure_rewrites": "true"
    },
    "httpd": {
        "authentication_handlers": "{couch_httpd_auth, cookie_authentication_handler}, {couch_httpd_auth, default_authentication_handler}",
        "bind_address": "192.168.0.2",
        "max_connections": "2048",
        "port": "5984",
    },
    "log": {
        "writer": "file",
        "file": "/var/log/couchdb/couch.log",
        "include_sasl": "true",
        "level": "info"
    },
    "query_server_config": {
        "reduce_limit": "true"
    },
    "replicator": {
        "max_http_pipeline_size": "10",
        "max_http_sessions": "10"
    },
    "stats": {
        "interval": "10"
    },
    "uuids": {
        "algorithm": "utc_random"
    }
}

/_node/{node-name}/_config/{section}

GET /_node/{node-name}/_config/{section}

Возвращает структуру конфигурации для отдельного раздела.

Параметры:
  • section – Имя раздела конфигурации

Заголовки запроса:
  • Accept –

    • application/json

    • text/plain

Заголовки ответа:
  • Content-Type –

    • application/json

    • text/plain; charset=utf-8

Коды состояния:
  • 200 OK – Запрос успешно выполнен

  • 401 Unauthorized – Требуются права администратора сервера CouchDB

  • 403 Forbidden – Недостаточно прав / Слишком много запросов с недействительными учетными данными

Запрос:

GET /_node/nonode@nohost/_config/httpd HTTP/1.1
Accept: application/json
Host: localhost:5984

Ответ:

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)

{
    "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}",
    "port": "5984"
}

/_node/{node-name}/_config/{section}/{key}

GET /_node/{node-name}/_config/{section}/{key}

Получает одно значение конфигурации из указанного раздела конфигурации.

Параметры:
  • section – Название раздела конфигурации

  • key – Название параметра конфигурации

Заголовки запроса:
  • Accept –

    • application/json

    • text/plain

Заголовки ответа:
  • Content-Type –

    • application/json

    • text/plain; charset=utf-8

Коды состояния:
  • 200 OK – Запрос успешно выполнен

  • 401 Не авторизован – Требуются права администратора сервера CouchDB

  • 403 Запрещено – Недостаточно прав / Слишком много запросов с недействительными учетными данными

Запрос:

GET /_node/nonode@nohost/_config/log/level HTTP/1.1
Accept: application/json
Host: localhost:5984

Ответ:

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"

Примечание

Возвращаемое значение будет представлено в формате JSON и может быть строкой, числом, массивом или объектом. Некоторые клиентские среды могут не распознавать простые строки или числовые значения как допустимый JSON.

PUT /_node/{node-name}/_config/{section}/{key}

Обновляет значение конфигурации. Новое значение следует передать в теле запроса в соответствующем формате JSON. Если вы задаете строковое значение, необходимо передать корректную строку JSON. В ответ CouchDB отправляет старое значение для указанного ключа раздела.

Параметры:
  • section – Название раздела конфигурации

  • key – Название параметра конфигурации

Заголовки запроса:
  • Accept –

    • application/json

    • text/plain

  • Content-Type – application/json

Заголовки ответа:
  • Content-Type –

    • application/json

    • text/plain; charset=utf-8

Коды состояния:
  • 200 OK – Запрос успешно выполнен

  • 400 Неверный запрос – Недопустимое тело запроса JSON

  • 401 Не авторизован – Требуются права администратора сервера CouchDB

  • 403 Запрещено – Недостаточно прав / Слишком много запросов с недействительными учетными данными

  • 500 Внутренняя ошибка сервера – Ошибка при установке конфигурации

Запрос:

PUT /_node/nonode@nohost/_config/log/level HTTP/1.1
Accept: application/json
Content-Length: 7
Content-Type: application/json
Host: localhost:5984

"info"

Ответ:

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}

Удаляет значение конфигурации. Возвращённый JSON будет содержать значение параметра конфигурации до его удаления.

Параметры:
  • section – Название раздела конфигурации

  • key – Название параметра конфигурации

Заголовки запроса:
  • Accept –

    • application/json

    • text/plain

Заголовки ответа:
  • Content-Type –

    • application/json

    • text/plain; charset=utf-8

Коды состояния:
  • 200 OK – Запрос успешно выполнен

  • 401 Unauthorized – Требуются права администратора сервера CouchDB

  • 403 Forbidden – Недостаточно прав / Слишком много запросов с недействительными учётными данными

  • 404 Not Found – Указанный параметр конфигурации не найден

Запрос:

DELETE /_node/nonode@nohost/_config/log/level HTTP/1.1
Accept: application/json
Host: localhost:5984

Ответ:

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"

/_node/{node-name}/_config/_reload

Добавлено в версии 3.0.

POST /_node/{node-name}/_config/_reload

Перезагружает конфигурацию с диска. Это приводит к сбросу всех изменений конфигурации в памяти, которые ещё не были сохранены на диск.

Запрос:

POST /_node/nonode@nohost/_config/_reload HTTP/1.1
Host: localhost:5984

Ответ:

HTTP/1.1 200 OK
Cache-Control: must-revalidate
Content-Length: 12
Content-Type: application/json
Date: Tues, 21 Jan 2020 11:09:35
Server: CouchDB/3.0.0 (Erlang OTP)

{"ok":true}

Copyright © 2025 The Apache Software Foundation — Licensed under the Apache License 2.0
https://docs.couchdb.org/en/3.5.1/api/server/configuration.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API