Profiling Procedure
- YourKit 12 (committers are eligible for a free Open Source license)
- To profile fcrepo4 with mvn jetty:run (as opposed to profiling a deployment the webapp in another container)
- Determine the path to your profiler agent library (platform dependent), see: http://www.yourkit.com/docs/12/help/agent.jsp
- include -agentpath in your MAVEN_OPTS, for example, on OS X:
- export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=128m -agentpath:/Applications/YourKit_Java_Profiler_12.0.5.app/bin/mac/libyjpagent.jnilib=delay=10000"
- cd fcrepo4/fcrepo-webapp
- mvn jetty:run
- YourKit should now display "Launcher" application as "Ready for profiling".
JMX Reporting
To enable Metrics reporting to JMX with mvn jetty:run
- Add "-Dcom.sun.management.jmxremote" to MAVEN_OPTS, e.g.:
export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=256m -Dcom.sun.management.jmxremote"
- Set the System Property "fcrepo.metrics.jmx" to "true", e.g.:
mvn jetty:run-war -Dfcrepo.metrics.jmx=true
- Invoke jconsole, select the Local Process "org.codehaus.plexus.classworlds.launcher.Launcher", and connect
- Select the MBeans tab and navigate to "org.fcrepo"