A newer version of this documentation is available.

View Latest

Node Configuration

    +

    Node Configuration

    GET /api/cfg

    Returns the node’s current view of the cluster’s configuration as JSON.

    Permission Required: cluster.settings!read

    Role Required: Full-Admin, Cluster-Admin

    Sample response
    {
        "indexDefs": {
            "implVersion": "4.0.0",
            "indexDefs": {
                "myFirstIndex": {
                    "name": "myFirstIndex",
                    "params": "",
                    "planParams": {
                        "hierarchyRules": null,
                        "maxPartitionsPerPIndex": 0,
                        "nodePlanParams": null,
                        "numReplicas": 0,
                        "planFrozen": false
                    },
                    "sourceName": "",
                    "sourceParams": "",
                    "sourceType": "nil",
                    "sourceUUID": "",
                    "type": "blackhole",
                    "uuid": "6cc599ab7a85bf3b"
                }
            },
            "uuid": "6cc599ab7a85bf3b"
        },
        "indexDefsCAS": 3,
        "indexDefsErr": null,
        "nodeDefsKnown": {
            "implVersion": "4.0.0",
            "nodeDefs": {
                "78fc2ffac2fd9401": {
                    "container": "",
                    "extras": "",
                    "hostPort": "0.0.0.0:8094",
                    "implVersion": "4.0.0",
                    "tags": null,
                    "uuid": "78fc2ffac2fd9401",
                    "weight": 1
                }
            },
            "uuid": "2f0d18fb750b2d4a"
        },
        "nodeDefsKnownCAS": 1,
        "nodeDefsKnownErr": null,
        "nodeDefsWanted": {
            "implVersion": "4.0.0",
            "nodeDefs": {
                "78fc2ffac2fd9401": {
                    "container": "",
                    "extras": "",
                    "hostPort": "0.0.0.0:8094",
                    "implVersion": "4.0.0",
                    "tags": null,
                    "uuid": "78fc2ffac2fd9401",
                    "weight": 1
                }
            },
            "uuid": "72d6750878551451"
        },
        "nodeDefsWantedCAS": 2,
        "nodeDefsWantedErr": null,
        "planPIndexes": {
            "implVersion": "4.0.0",
            "planPIndexes": {
                "myFirstIndex_6cc599ab7a85bf3b_0": {
                    "indexName": "myFirstIndex",
                    "indexParams": "",
                    "indexType": "blackhole",
                    "indexUUID": "6cc599ab7a85bf3b",
                    "name": "myFirstIndex_6cc599ab7a85bf3b_0",
                    "nodes": {
                        "78fc2ffac2fd9401": {
                            "canRead": true,
                            "canWrite": true,
                            "priority": 0
                        }
                    },
                    "sourceName": "",
                    "sourceParams": "",
                    "sourcePartitions": "",
                    "sourceType": "nil",
                    "sourceUUID": "",
                    "uuid": "64bed6e2edf354c3"
                }
            },
            "uuid": "6327debf817a5ec7",
            "warnings": {
                "myFirstIndex": []
            }
        },
        "planPIndexesCAS": 5,
        "planPIndexesErr": null,
        "status": "ok"
    }
    POST /api/cfgRefresh

    Requests the node to refresh its configuration from the configuration provider.

    Permission Required: cluster.settings!write

    Role Required: Full-Admin, Cluster-Admin

    POST /api/managerKick

    Forces the node to replan resource assignments (by running the planner, if enabled) and to update its runtime state to reflect the latest plan (by running the janitor, if enabled).

    Permission Required: cluster.settings!write

    Role Required: Full-Admin, Cluster-Admin

    GET /api/managerMeta

    Returns information on the node’s capabilities, including available indexing and storage options as JSON, and is intended to help management tools and web UI’s to be more dynamically metadata driven.

    Permission Required: cluster.settings!read

    Role Required: Full-Admin, Cluster-Admin

    Node Diagnostics

    GET /api/diag

    Returns the full set of diagnostic information from the node in one shot as JSON. That is, the /api/diag response will be the union of the responses from the other REST API diagnostic and monitoring endpoints from the node, and is intended to make production support easier.

    For example, for a three node cluster, you could capture the /api/diag output of each node with something like:

    curl http://cbft-01:8094/api/diag > cbft-01.json
    curl http://cbft-02:8094/api/diag > cbft-02.json
    curl http://cbft-03:8094/api/diag > cbft-03.json

    The /api/diag response JSON object can be quite large, from 100’s of KB to much more.

    The motivation for /api/diag is to simplify working with the Couchbase community, forums, technical support and other engineers by making data capture from each FTS node a single step.

    Permission Required: cluster.logs!read

    Role Required: Full-Admin, Cluster-Admin

    GET /api/log

    Returns recent log messages and key events for the node as JSON.

    Permission Required: cluster.logs!read

    Role Required: Full-Admin, Cluster-Admin

    Sample response
    {
        "events": [],
        "messages": []
    }
    GET /api/runtime

    Returns information on the node’s software, such as version strings and slow-changing runtime settings as JSON.

    Permission Required: cluster.settings!read

    Role Required: Full-Admin, Cluster-Admin

    Sample response
    {
        "arch": "amd64",
        "go": {
            "GOMAXPROCS": 1,
            "GOROOT": "/usr/local/go",
            "compiler": "gc",
            "version": "go1.4"
        },
        "numCPU": 8,
        "os": "darwin",
        "versionData": "4.0.0",
        "versionMain": "v0.3.1"
    }
    GET /api/runtime/args

    Returns information on the node’s command-line, parameters, environment variables and O/S process values as JSON.

    Permission Required: cluster.settings!read

    Role Required: Full-Admin, Cluster-Admin

    POST /api/runtime/profile/cpu

    Requests the node to capture local cpu usage profiling information.

    Permission Required: cluster.admin

    Role Required: Full-Admin, Cluster-Admin

    POST /api/runtime/profile/memory

    Requests the node to capture lcoal memory usage profiling information.

    Permission Required: cluster.admin

    Role Required: Full-Admin, Cluster-Admin

    Node Management

    POST /api/runtime/gc

    Requests the node to perform a GC.

    Permission Required: cluster.admin

    Role Required: Full-Admin, Cluster-Admin

    Node Monitoring

    GET /api/runtime/stats

    Returns information on the node’s low-level runtime stats as JSON.

    Role Required: Full-Admin, Cluster-Admin

    GET /api/runtime/statsMem

    Returns information on the node’s low-level GC and memory related runtime stats as JSON.

    Role Required: Full-Admin, Cluster-Admin