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