Is it possible to track (detect, track, etc.) the main types of I / O operations inside the JVM?

Is there any API or library that allows the user to create some kind of report on the actions performed by the program running inside the JVM instance? I mean something like the interception JVM / system calls with further classification depending on the type of activity, such as, DiskWrite, DiskRead, NetworkWrite, NetworkRead, Wait(it really active?) And so on. It would also be useful to determine periods of heavy CPU usage, etc. If some native code is required, detailed answers to this topic are also appreciated.

+4
source share
1 answer

Use the Hyperic SIGAR API . It provides memory, processor, disk, average load, network interface information and metrics, process table information, route information, etc.

And all these employees are licensed under Apache, version 2.0.

+1
source

All Articles