Files
OpenSearch-Docs-Cn/_api-reference/nodes-apis/nodes-hot-threads.md
T
7bb41fe4ce Make API reference top level (#1637)
* Make API reference top level

Signed-off-by: Naarcha-AWS <[email protected]>

* Fix typo on Drag and Drop page (#1633)

* Fix typo on Drag and Drop page

* Update _dashboards/drag-drop-wizard.md

Co-authored-by: Nate Bower <[email protected]>

* Update drag-drop-wizard.md

Co-authored-by: Nate Bower <[email protected]>

* Putting all the Docker install material on a single page (#1452)

* Putting all the Docker install material on a single page

Signed-off-by: JeffH-AWS <[email protected]>

* Making room for revamp

Signed-off-by: JeffH-AWS <[email protected]>

* Intro added

Signed-off-by: JeffH-AWS <[email protected]>

* Continuing to flesh out the intro section and overview

Signed-off-by: JeffH-AWS <[email protected]>

* Overview finalized

Signed-off-by: JeffH-AWS <[email protected]>

* Introducing docker compose

Signed-off-by: JeffH-AWS <[email protected]>

* Added link to compose

Signed-off-by: JeffH-AWS <[email protected]>

* Continuing docker image commentary

Signed-off-by: JeffH-AWS <[email protected]>

* Sometimes I wonder if anyone reads these

Signed-off-by: JeffH-AWS <[email protected]>

* Adding notes on installing compose with pip

Signed-off-by: JeffH-AWS <[email protected]>

* Adding prereqs

Signed-off-by: JeffH-AWS <[email protected]>

* Magnets - how do they work?

Signed-off-by: JeffH-AWS <[email protected]>

* Almonds and peaches are part of the same plant subgenus, Amygdalus

Signed-off-by: JeffH-AWS <[email protected]>

* There are 293 ways to make change for a dollar

Signed-off-by: JeffH-AWS <[email protected]>

* A shark is the only known fish that can blink with both eyes

Signed-off-by: JeffH-AWS <[email protected]>

* A crocodile cannot stick its tongue out

Signed-off-by: JeffH-AWS <[email protected]>

* wording

Signed-off-by: JeffH-AWS <[email protected]>

* Reorganizing a couple paragraphs to make it flow better

Signed-off-by: JeffH-AWS <[email protected]>

* Forgot a word

Signed-off-by: JeffH-AWS <[email protected]>

* Add tip about pruning stopped containers

Signed-off-by: JeffH-AWS <[email protected]>

* Cleaning up

Signed-off-by: JeffH-AWS <[email protected]>

* Add blurb about container ls

Signed-off-by: JeffH-AWS <[email protected]>

* Adding the Docker Compose stuff

Signed-off-by: JeffH-AWS <[email protected]>

* Working on compose

Signed-off-by: JeffH-AWS <[email protected]>

* Continuing work on the compose section - it's a lot of info

Signed-off-by: JeffH-AWS <[email protected]>

* Added important settings

Signed-off-by: JeffH-AWS <[email protected]>

* Updates to settings that need configured

Signed-off-by: JeffH-AWS <[email protected]>

* Still working through compose things

Signed-off-by: JeffH-AWS <[email protected]>

* Fixed wording

Signed-off-by: JeffH-AWS <[email protected]>

* Working through compose commands and guidance

Signed-off-by: JeffH-AWS <[email protected]>

* Reordering/rewording

Signed-off-by: JeffH-AWS <[email protected]>

* More phrasing

Signed-off-by: JeffH-AWS <[email protected]>

* More wording in steps

Signed-off-by: JeffH-AWS <[email protected]>

* More wording in steps

Signed-off-by: JeffH-AWS <[email protected]>

* Organizing

Signed-off-by: JeffH-AWS <[email protected]>

* Adding stuff and things

Signed-off-by: JeffH-AWS <[email protected]>

* Continuing to work through the configuration steps

Signed-off-by: JeffH-AWS <[email protected]>

* Fixes

Signed-off-by: JeffH-AWS <[email protected]>

* Fixes

Signed-off-by: JeffH-AWS <[email protected]>

* Still working on the configuration steps

Signed-off-by: JeffH-AWS <[email protected]>

* Changes

Signed-off-by: JeffH-AWS <[email protected]>

* More work

Signed-off-by: JeffH-AWS <[email protected]>

* Removed perf analyzer - refer to GH issue 1555

Signed-off-by: JeffH-AWS <[email protected]>

* Fixing things

Signed-off-by: JeffH-AWS <[email protected]>

* Adding guidance on passing settings in compose

Signed-off-by: JeffH-AWS <[email protected]>

* Working through dockerfile materials now

Signed-off-by: JeffH-AWS <[email protected]>

* wording

Signed-off-by: JeffH-AWS <[email protected]>

* Finalized the sample dev compose file

Signed-off-by: JeffH-AWS <[email protected]>

* Continuing work with configuration

Signed-off-by: JeffH-AWS <[email protected]>

* Finished - ready for reviews

Signed-off-by: JeffH-AWS <[email protected]>

* Fixed a link I forgot to change before

Signed-off-by: JeffH-AWS <[email protected]>

* Changes from first proofread

Signed-off-by: JeffH-AWS <[email protected]>

* Changed heading

Signed-off-by: JeffH-AWS <[email protected]>

* Addressed reviewer comments and made some changes

Signed-off-by: JeffH-AWS <[email protected]>

* Forgot to incorporate one change. Fixed.

Signed-off-by: JeffH-AWS <[email protected]>

* Final editorial changes

Signed-off-by: JeffH-AWS <[email protected]>

Signed-off-by: JeffH-AWS <[email protected]>

* fix#1584-custom_attr_allowlist (#1636)

Signed-off-by: cwillum <[email protected]>

Signed-off-by: cwillum <[email protected]>

* Update TERMS.md with definition for Setting (#1632)

* fix#1631-Terms-setting

Signed-off-by: cwillum <[email protected]>

* fix#1631-Terms-setting

Signed-off-by: cwillum <[email protected]>

Signed-off-by: cwillum <[email protected]>

* Add disclaimer about remote fs usage and an example of setting env var (#1644)

* Add disclaimer about remote fs usage and an example of setting env var

Signed-off-by: JeffH-AWS <[email protected]>

* Enhanced wording a little bit

Signed-off-by: JeffH-AWS <[email protected]>

Signed-off-by: JeffH-AWS <[email protected]>

* [DOC] New documentation: Self-host maps server (#1625)

* Add new page self-host maps server

Signed-off-by: vagimeli <[email protected]>

* Added new content

Signed-off-by: vagimeli <[email protected]>

* Copy edit

Signed-off-by: vagimeli <[email protected]>

* Tech review edits

Signed-off-by: vagimeli <[email protected]>

* Doc review edits

Signed-off-by: vagimeli <[email protected]>

* Editorial review changes

Signed-off-by: vagimeli <[email protected]>

* Final edits

Signed-off-by: vagimeli <[email protected]>

Signed-off-by: vagimeli <[email protected]>

* Add feedback.

Signed-off-by: Naarcha-AWS <[email protected]>

* Fix links

Signed-off-by: Naarcha-AWS <[email protected]>

Signed-off-by: Naarcha-AWS <[email protected]>
Signed-off-by: JeffH-AWS <[email protected]>
Signed-off-by: cwillum <[email protected]>
Signed-off-by: vagimeli <[email protected]>
Co-authored-by: Nate Bower <[email protected]>
Co-authored-by: Jeff Huss <[email protected]>
Co-authored-by: Chris Moore <[email protected]>
Co-authored-by: Melissa Vagi <[email protected]>
2022-10-27 11:50:39 -05:00

5.9 KiB
Raw Blame History

layout, title, parent, nav_order
layout title parent nav_order
default Nodes hot threads Nodes APIs 30

Nodes hot threads

The nodes hot threads endpoint provides information about busy JVM threads for selected cluster nodes. It provides a unique view of the of activity each node.

Example

GET /_nodes/hot_threads

Path and HTTP methods

GET /_nodes/hot_threads
GET /_nodes/<nodeId>/hot_threads

Path parameters

You can include the following optional path parameter in your request.

Parameter Type Description
nodeId String A comma-separated list of node IDs used to filter results. Supports node filters. Defaults to _all.

Query parameters

You can include the following query parameters in your request. All query parameters are optional.

Parameter Type Description
snapshots Integer The number of samples of thread stacktraces. Defaults to 10.
interval Time The interval between consecutive samples. Defaults to 500ms.
threads Integer The number of the busiest threads to return information about. Defaults to 3.
ignore_idle_threads Boolean Don’t show threads that are in known idle states, such as waiting on a socket select or pulling from an empty task queue. Defaults to true.
type String Supported thread types are cpu, wait, or block. Defaults to cpu.
timeout Time Sets the time limit for node response. Default value is 30s.

Sample request

GET /_nodes/hot_threads

Sample response

::: {opensearch}{F-ByTQzVQ3GQeYzQJArJGQ}{GxbcLdCATPWggOuQHJAoCw}{127.0.0.1}{127.0.0.1:9300}{dimr}{shard_indexing_pressure_enabled=true}
   Hot threads at 2022-09-29T19:46:44.533Z, interval=500ms, busiestThreads=3, ignoreIdleThreads=true:
   
    0.1% (455.5micros out of 500ms) cpu usage by thread 'ScheduledMetricCollectorsExecutor'
     10/10 snapshots sharing following 2 elements
       [email protected]/java.lang.Thread.sleep(Native Method)
       org.opensearch.performanceanalyzer.collectors.ScheduledMetricCollectorsExecutor.run(ScheduledMetricCollectorsExecutor.java:100)

Response

Unlike the majority of OpenSearch API responses, this response is in a text format.

It consists of one section per each cluster node included in the response.

Each section starts with a single line containing the following segments:

Line segment Description
:::  Line start (a distinct visual symbol).
{global-eu-35} Node name.
{uFPbKLDOTlOmdnwUlKW8sw} NodeId.
{OAM8OT5CQAyasWuIDeVyUA} EphemeralId.
{global-eu-35.local} Host name.
{[gdv2:a284:2acv:5fa6:0:3a2:7260:74cf]:9300} Host address.
{dimr} Node roles (d=data, i=ingest, m=cluster manager, r=remote cluster client).
{zone=west-a2, shard_indexing_pressure_enabled=true} Node attributes.

Then information about threads of the selected type is provided.

::: {global-eu-35}{uFPbKLDOTlOmdnwUlKW8sw}{OAM8OT5CQAyasWuIDeVyUA}{global-eu-35.local}{[gdv2:a284:2acv:5fa6:0:3a2:7260:74cf]:9300}{dimr}{zone=west-a2, shard_indexing_pressure_enabled=true}
   Hot threads at 2022-04-01T15:15:27.658Z, interval=500ms, busiestThreads=3, ignoreIdleThreads=true:
   
    0.1% (645micros out of 500ms) cpu usage by thread 'opensearch[global-eu-35][transport_worker][T#7]'
     4/10 snapshots sharing following 3 elements
       io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
       io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
       [email protected]/java.lang.Thread.run(Thread.java:829)
::: {global-eu-62}{4knOxAdERlOB19zLQIT1bQ}{HJuZs2HiQ_-8Elj0Fvi_1g}{global-eu-62.local}{[gdv2:a284:2acv:5fa6:0:3a2:bba6:fe3f]:9300}{dimr}{zone=west-a2, shard_indexing_pressure_enabled=true}
   Hot threads at 2022-04-01T15:15:27.659Z, interval=500ms, busiestThreads=3, ignoreIdleThreads=true:
      
   18.7% (93.4ms out of 500ms) cpu usage by thread 'opensearch[global-eu-62][transport_worker][T#3]'
     6/10 snapshots sharing following 3 elements
       io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
       io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
       [email protected]/java.lang.Thread.run(Thread.java:829)
::: {global-eu-44}{8WW3hrkcTwGvgah_L8D_jw}{Sok7spHISFyol0jFV6i0kw}{global-eu-44.local}{[gdv2:a284:2acv:5fa6:0:3a2:9120:e79e]:9300}{dimr}{zone=west-a2, shard_indexing_pressure_enabled=true}
   Hot threads at 2022-04-01T15:15:27.659Z, interval=500ms, busiestThreads=3, ignoreIdleThreads=true:
   
   42.6% (212.7ms out of 500ms) cpu usage by thread 'opensearch[global-eu-44][write][T#5]'
     2/10 snapshots sharing following 43 elements
       [email protected]/sun.nio.ch.IOUtil.write1(Native Method)
       [email protected]/sun.nio.ch.EPollSelectorImpl.wakeup(EPollSelectorImpl.java:254)
       io.netty.channel.nio.NioEventLoop.wakeup(NioEventLoop.java:787)
       io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:846)
       io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:815)
       io.netty.channel.AbstractChannelHandlerContext.safeExecute(AbstractChannelHandlerContext.java:989)
       io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:796)
       io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:758)
       io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1020)
       io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:311)
       org.opensearch.transport.netty4.Netty4TcpChannel.sendMessage(Netty4TcpChannel.java:159)
       app//org.opensearch.transport.OutboundHan...

Required permissions

If you use the security plugin, make sure you set the following permissions: cluster:monitor/nodes/hot_threads.