mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-06 04:58:50 +00:00
779fb9a1c0
* Adds nodes usage API to monitor usages of actions The nodes usage API has 2 main endpoints /_nodes/usage and /_nodes/{nodeIds}/usage return the usage statistics for all nodes and the specified node(s) respectively. At the moment only one type of usage statistics is available, the REST actions usage. This records the number of times each REST action class is called and when the nodes usage api is called will return a map of rest action class name to long representing the number of times each of the action classes has been called. Still to do: * [x] Create usage service to store usage statistics * [x] Record usage in REST layer * [x] Add Transport Actions * [x] Add REST Actions * [x] Tests * [x] Documentation * Rafactors UsageService so counts are done by the handlers * Fixing up docs tests * Adds a name to all rest actions * Addresses review comments
64 lines
2.1 KiB
Plaintext
64 lines
2.1 KiB
Plaintext
[[cluster-nodes-usage]]
|
|
== Nodes Feature Usage
|
|
|
|
[float]
|
|
=== Nodes usage
|
|
|
|
The cluster nodes usage API allows to retrieve information on the usage
|
|
of features for each node.
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
GET _nodes/nodeId1,nodeId2/usage
|
|
GET _nodes/usage
|
|
--------------------------------------------------
|
|
// CONSOLE
|
|
// TEST[setup:node]
|
|
// TEST[s/nodeId1,nodeId2/\$node_name/]
|
|
|
|
The first command retrieves usage of all the nodes in the cluster. The
|
|
second command selectively retrieves nodes usage of only `nodeId1` and
|
|
`nodeId2`. All the nodes selective options are explained
|
|
<<cluster-nodes,here>>.
|
|
|
|
[float]
|
|
[[rest-usage]]
|
|
==== REST actions usage information
|
|
|
|
The `rest_actions` field in the response contains a map of the REST
|
|
actions classname with a count of the number of times that action has
|
|
been called on the node:
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
{
|
|
"_nodes": {
|
|
"total": 1,
|
|
"successful": 1,
|
|
"failed": 0
|
|
},
|
|
"cluster_name": "my_cluster",
|
|
"nodes": {
|
|
"pQHNt5rXTTWNvUgOrdynKg": {
|
|
"timestamp": 1492553961812, <1>
|
|
"since": 1492553906606, <2>
|
|
"rest_actions": {
|
|
"org.elasticsearch.rest.action.admin.cluster.RestNodesUsageAction": 1,
|
|
"org.elasticsearch.rest.action.admin.indices.RestCreateIndexAction": 1,
|
|
"org.elasticsearch.rest.action.document.RestGetAction": 1,
|
|
"org.elasticsearch.rest.action.search.RestSearchAction": 19, <3>
|
|
"org.elasticsearch.rest.action.admin.cluster.RestNodesInfoAction": 36
|
|
}
|
|
}
|
|
}
|
|
}
|
|
--------------------------------------------------
|
|
// TESTRESPONSE[s/"my_cluster"/$body.cluster_name/]
|
|
// TESTRESPONSE[s/"pQHNt5rXTTWNvUgOrdynKg"/\$node_name/]
|
|
// TESTRESPONSE[s/1492553961812/$body.$_path/]
|
|
// TESTRESPONSE[s/1492553906606/$body.$_path/]
|
|
// TESTRESPONSE[s/"rest_actions": [^}]+}/"rest_actions": $body.$_path/]
|
|
<1> Timestamp for when this nodes usage request was performed.
|
|
<2> Timestamp for when the usage information recording was started. This is
|
|
equivalent to the time that the node was started.
|
|
<3> Search action has been called 19 times for this node. |