...In complex asynchronous code — with timers, open handles, network sockets, file watchers, or unfulfilled promises — it can be tricky to figure out what is preventing the event loop from exiting. This utility inspects the active handles and resources in the runtime, prints a breakdown of open callbacks, sockets, timers, and other tasks, and explains what’s keeping Node running, helping you track down leaks or unintended resource retention. It’s particularly useful during testing, when you expect Node to exit after tests finish, or in long-running servers when you're debugging resource leaks or shutdown logic. ...