in src/Endpoints/Nodes.php [280:309]
public function stats(?array $params = null)
{
$params = $params ?? [];
if (isset($params['metric']) && isset($params['index_metric']) && isset($params['node_id'])) {
$url = '/_nodes/' . $this->encode($this->convertValue($params['node_id'])) . '/stats/' . $this->encode($this->convertValue($params['metric'])) . '/' . $this->encode($this->convertValue($params['index_metric']));
$method = 'GET';
} elseif (isset($params['metric']) && isset($params['node_id'])) {
$url = '/_nodes/' . $this->encode($this->convertValue($params['node_id'])) . '/stats/' . $this->encode($this->convertValue($params['metric']));
$method = 'GET';
} elseif (isset($params['metric']) && isset($params['index_metric'])) {
$url = '/_nodes/stats/' . $this->encode($this->convertValue($params['metric'])) . '/' . $this->encode($this->convertValue($params['index_metric']));
$method = 'GET';
} elseif (isset($params['node_id'])) {
$url = '/_nodes/' . $this->encode($this->convertValue($params['node_id'])) . '/stats';
$method = 'GET';
} elseif (isset($params['metric'])) {
$url = '/_nodes/stats/' . $this->encode($this->convertValue($params['metric']));
$method = 'GET';
} else {
$url = '/_nodes/stats';
$method = 'GET';
}
$url = $this->addQueryString($url, $params, ['completion_fields','fielddata_fields','fields','groups','level','types','timeout','include_segment_file_sizes','include_unloaded_segments','pretty','human','error_trace','source','filter_path']);
$headers = [
'Accept' => 'application/json',
];
$request = $this->createRequest($method, $url, $headers, $params['body'] ?? null);
$request = $this->addOtelAttributes($params, ['node_id', 'metric', 'index_metric'], $request, 'nodes.stats');
return $this->client->sendRequest($request);
}