Overview
The Analytics Administration REST APIs are provided by the Analytics service. These APIs enables you to manage and monitor the Analytics service.
The API schemes and host URLs are as follows:
-
https://node:18095/
(for secure access)
where node
is the host name or IP address of a node running the Analytics service.
Paths
This section describes the operations available with these REST APIs.
Request Cancellation
DELETE /analytics/admin/active_requests
Parameters
Type | Name | Description | Schema |
---|---|---|---|
FormData |
client_context_id |
Identifier passed by the client that is used to identify an active request to be cancelled. |
string |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
The operation was successful. |
No Content |
400 |
Bad request. Incorrect parameter or missing value. |
No Content |
401 |
Unauthorized. The user name or password may be incorrect. Returns an object containing an error message. Refer to Error Codes. |
object |
404 |
Not found. The path may be incorrect, or there is no active request with the specified identifier. |
No Content |
Example HTTP request
The example below uses the client_context_id
used in the Query Service example to identify the request.
curl -v -u Administrator:password -X DELETE \
http://localhost:8095/analytics/admin/active_requests \
-d client_context_id=xyz
Cluster Restart
POST /analytics/cluster/restart
Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
Accepted. Returns an object showing the status of the cluster. |
object |
401 |
Unauthorized. The user name or password may be incorrect. Returns an object containing an error message. Refer to Error Codes. |
object |
404 |
Not found. The path may be incorrect. |
No Content |
Example HTTP request
curl -v -u Administrator:password -X POST http://localhost:8095/analytics/cluster/restart
Example HTTP response
{
"cluster" : {
"metadata_node" : "edfb6de9c91d7fb36399fea3ce620c5c",
"ncs" : [ {
"node_id" : "edfb6de9c91d7fb36399fea3ce620c5c",
"partitions" : [ {
"active" : true,
"partition_id" : "partition_0"
} ],
"pid" : 5763,
"state" : "ACTIVE"
} ],
"state" : "ACTIVE"
},
"date" : "Wed Oct 10 15:35:56 BST 2018",
"status" : "SHUTTING_DOWN"
}
Node Restart
POST /analytics/node/restart
Responses
HTTP Code | Description | Schema |
---|---|---|
202 |
Accepted. Returns an object showing the status of the node. |
object |
401 |
Unauthorized. The user name or password may be incorrect. Returns an object containing an error message. Refer to Error Codes. |
object |
404 |
Not found. The path may be incorrect. |
No Content |
Ingestion Status
GET /analytics/status/ingestion
Description
Shows the progress of ingestion by the Analytics service, for each Analytics collection.
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Success. Returns an object giving the ingestion status of each Analytics collection. |
|
401 |
Unauthorized. The user name or password may be incorrect. Returns an object containing an error message. Refer to Error Codes. |
object |
404 |
Not found. The path may be incorrect. |
No Content |
Example HTTP request
curl -v -u Administrator:password http://localhost:8095/analytics/status/ingestion
Example HTTP response
{
"links": [
{
"name": "Local",
"scope": "travel-sample/tenant_agent_02",
"status": "healthy",
"state": [
{
"timestamp": 1631107234921,
"progress": 1,
"scopes": [
{
"collections": [
{
"name": "users"
}
],
"name": "travel-sample/tenant_agent_02"
}
]
}
]
},
{
"name": "Local",
"scope": "travel-sample/inventory",
"status": "healthy",
"state": [
{
"timestamp": 1631107234921,
"progress": 1,
"scopes": [
{
"collections": [
{
"name": "airport"
},
{
"name": "landmark"
}
],
"name": "travel-sample/inventory"
}
]
},
{
"timestamp": 1631107234921,
"progress": 0.9821428571428571,
"timeLag": 4840,
"itemsProcessed": 23595,
"seqnoAdvances": 49129,
"scopes": [
{
"collections": [
{
"name": "route"
}
],
"name": "travel-sample/inventory"
}
]
}
]
}
]
}
Pending Mutations
GET /analytics/node/agg/stats/remaining
operation.deprecated |
Description
Shows the number of mutations in the DCP queue that have not yet been ingested by the Analytics service, for each Analytics collection.
This endpoint may not return meaningful results in Couchbase Server 7.0 and later. The reported number of mutations may be different to the actual number of mutations in the Analytics collection. For this reason, this endpoint has been deprecated, and you should use the Ingestion Status endpoint instead. |
Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Success. Returns an object giving the number of pending mutations for each Analytics collection. |
|
401 |
Unauthorized. The user name or password may be incorrect. Returns an object containing an error message. Refer to Error Codes. |
object |
404 |
Not found. The path may be incorrect. |
No Content |
Definitions
This section describes the properties returned by these REST APIs.
Ingestion
An object containing a single links property.
Name | Description | Schema |
---|---|---|
links |
An array of objects, each giving information about a single linked Analytics scope. |
< Links > array |
Links
Name | Description | Schema |
---|---|---|
name |
The name of the link. |
string |
scope |
The name of the Analytics scope. |
string |
status |
The status of the Analytics scope. |
enum (healthy, stopped, unhealthy, suspended) |
state |
An array of objects, each giving the ingestion state of one or more Analytics collections. Analytics collections which have the same ingestion state within this Analytics scope are aggregated together. |
< States > array |
States
Name | Description | Schema |
---|---|---|
timestamp |
The time since epoch that this sample was calculated, in milliseconds. |
integer |
progress |
The percentage (fraction from 0 to 1) of ingestion progress at the current time. |
number (double) |
timeLag |
The estimated time that the ingestion lags behind the Data service, in milliseconds. Only displayed for Analytics collections that are not fully ingested. |
integer |
itemsProcessed |
The number of items ingested since last connect; that is, the total number of mutations and deletions processed. Only displayed for Analytics collections that are not fully ingested. Note that this value is reset on connect, so it may appear to get smaller. |
integer |
seqnoAdvances |
The change in sequence number (seqno) since last connect. Only displayed for Analytics collections that are not fully ingested. |
integer |
scopes |
An array of objects, each one giving information about a single Analytics scope. |
< State Scopes > array |
State Scopes
Name | Description | Schema |
---|---|---|
name |
The name of the Analytics scope. |
string |
collections |
An array of objects, each one giving information about a single Analytics collection. |
< State Collections > array |
State Collections
Name | Description | Schema |
---|---|---|
name |
The name of the Analytics collection. |
string |
Mutations
An object containing one or more nested scope objects, one for each available Analytics scope.
Name | Description | Schema |
---|---|---|
scope |
An object containing one or more collection properties, one for each Analytics collection in the Analytics scope. The name of the object is the name of the Analytics scope, in display form. |
Collections
Name | Description | Schema |
---|---|---|
collection |
The number of mutations in the DCP queue that have not yet been ingested. The name of the property is the name of the Analytics collection. |
integer |
Security
The Analytics Administration REST APIs support HTTP basic authentication. Credentials can be passed via HTTP headers.
Analytics Manage / Analytics Select
For the Request Cancellation, Ingestion Status, and Pending Mutations operations, users must have one of the following access roles:
-
Full Admin
-
Cluster Admin
-
Analytics Manager
-
Analytics Reader
-
Analytics Select
-
Analytics Admin
Type : basic
Analytics Manage
For the Cluster Restart and Node Restart operations, users must have one of the following RBAC roles:
-
Full Admin
-
Cluster Admin
-
Analytics Admin
Type : basic
Refer to Roles for more details.