节点热线程 API

编辑

返回集群中每个选定节点上的热线程。

请求

编辑

GET /_nodes/hot_threads

GET /_nodes/<node_id>/hot_threads

先决条件

编辑
  • 如果启用了 Elasticsearch 安全功能,则您必须具有 monitormanage 集群权限才能使用此 API。

描述

编辑

此 API 会生成集群中每个选定节点上的热线程的详细信息。输出是纯文本,其中包含每个节点的顶级热线程的详细信息。

路径参数

编辑
<node_id>
(可选,字符串)用于限制返回信息的节点 ID 或名称的逗号分隔列表。

查询参数

编辑
ignore_idle_threads
(可选,布尔值)如果为 true,则会过滤掉已知的空闲线程(例如,在套接字选择中等待或从空队列中获取任务)。默认为 true。
interval
(可选,时间单位)进行线程第二次采样的间隔。默认为 500ms
snapshots
(可选,整数)线程堆栈跟踪的样本数。默认为 10
threads
(可选,整数)指定要提供信息的的热线程数。默认为 3。如果您使用此 API 进行故障排除,请将此参数设置为较大的数字(例如 9999),以获取有关系统中所有线程的信息。
timeout
(可选,时间单位)指定等待每个节点响应的时间。如果省略,则无限期等待。
type
(可选,字符串)要采样的类型。可用选项为 blockcpuwait。默认为 cpu

示例

编辑
resp = client.nodes.hot_threads()
print(resp)

resp1 = client.nodes.hot_threads(
    node_id="nodeId1,nodeId2",
)
print(resp1)
response = client.nodes.hot_threads
puts response

response = client.nodes.hot_threads(
  node_id: 'nodeId1,nodeId2'
)
puts response
const response = await client.nodes.hotThreads();
console.log(response);

const response1 = await client.nodes.hotThreads({
  node_id: "nodeId1,nodeId2",
});
console.log(response1);
GET /_nodes/hot_threads
GET /_nodes/nodeId1,nodeId2/hot_threads