You can use Glowroot
Glowroot is Open source Java Application Monitor. Very easy to use and Very low overhead.
Steps to run:
Download and unzip glowroot-0.13.4-dist.zip
add -javaagent:path/to/glowroot.jar to your application's JVM args
Go to http://localhost:4000
and monitor all this
You could use graylog with the GELF logformat from your apps as central logserver, we do this with highly distributed systems. So you would be able to get errors and troughput metrics as graphs to.
Or if you need more insights pinpoint