Analyzer epoll-wait-overrun-time-distr

Name

epoll-wait-overrun-time-distr - Epoll Wait Overrun Time Distribution

This analyzer measures the overrun time of epoll_wait calls - the additional time spent waiting beyond the specified timeout value. It tracks cases where epoll_wait returns later than expected, capturing the delay between the intended timeout and actual return time. The histogram shows the distribution of these overrun delays, with 0 indicating timely returns (within timeout) and positive values showing extra waiting time. This helps identify scheduling delays, system load issues, or kernel responsiveness problems that cause epoll_wait to exceed its timeout parameters.

Resource Category

Latency.

Application Type & Technical Stack

  • All

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 epoll-wait-overrun-time-distr -p PID

# trace a shell command directly
orxray analyzer run epoll-wait-overrun-time-distr -c SHELL_CMD

# PGID is the process group ID or any process's PID within the target process
# group.
orxray analyzer run epoll-wait-overrun-time-distr -p -PGID

# trace any processes started from the specified executable path.
orxray analyzer run epoll-wait-overrun-time-distr --exe /path/to/exe/file

Tracing Multiple Processes

Supported.

Output Formats

  • Histogram Bar Charts
  • Plain Texts

Output Example

{
  "data": [{
    "title": "Epoll overrun time distribution",
    "subtitle": "1000 Calls (min: 0 us, avg: 4 us, max: 216 us)",
    "type": "dist-bar",
    "ver": 1,
    "series": {
      "data": {"0": 947, "1": 0, "2": 0, "4": 0, "8": 1, "16": 0, "32": 1, "64": 45, "128": 6, "256": 0, "512": 0},
      "categoryUnit": "us",
      "categoryTitle": "Latency",
      "name": "Calls"
    },
    "summary": {"min": 0, "max": 216, "avg": 4, "cnt": 1000},
    "kind": ""
  }],
  "kind": "common"
}

Author

The OpenResty Inc. Team.

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