Analyzer java-lock-contention

java-lock-contention: Java Lock and Park Wait Flame Graph.

Name

java-lock-contention - Java Lock and Park Wait Flame Graph

This analyzer shows which Java call paths spend time waiting for a monitor or a park. It covers common waits caused by synchronized blocks/methods and LockSupport.park. Each flame graph path represents a Java call path that was waiting. By default, the width is total wait time; metric=calls changes it to the number of waits. The Linux futex is only the JVM’s implementation detail used to detect the wait.

Resource Category

off-CPU.

Application Type & Technical Stack

  • Java

Command Line Syntax

The analyzer can be invoked directly on the command-line via the orxray utility from the openresty-xray-cli software package.

Alternatively, the analyzer can also be invoked manually or automatically on the web console UI of OpenResty XRay (like on the Advanced web page).

# PID is the target process PID.
orxray analyzer run java-lock-contention -p PID

# trace a shell command directly
orxray analyzer run java-lock-contention -c SHELL_CMD

# PGID is the process group ID or any process's PID within the target process
# group.
orxray analyzer run java-lock-contention -p -PGID

# trace any processes started from the specified executable path.
orxray analyzer run java-lock-contention --exe /path/to/exe/file

Tracing Multiple Processes

Supported.

Output Formats

  • Flame Graphs

Author

The OpenResty Inc. Team.

Copyright (C) by OpenResty Inc. All rights reserved.