Even though it does not have all the features of new relic, you can take a look at stagemonitor. It is a open source java web application performance monitor. It captures response time metrics, JVM metrics, request details (including a call stack captured by the request profiler) and more. The overhead is very low.
Optionally, you can use the great timeseries database graphite with it to store a long history of datapoints that you can look at with fancy dashboards.
Take a look at the project website to see screenshots, feature descriptions and documentation.
Note: I am the developer of stagemonitor