sakaiproject/nakamura — pull request #933 by mrvisser (2012-07-22 12:47:06+00:00)
Title: KERN-3001 Addition of Perf4j capability in Nakamura

This is composed of 2 components (one of which is not the PR, it's an external dependency):

*Prerequisite:* The pre-weaved perf4j bundle should be uploaded to the maven repos: https://github.com/mrvisser/perf4j-enhanced

1. *The pre-weaved perf4j dependency.* This is provided mostly to reduce the pre-requisite Maven plumbing to using Perf4j in bundles. If you don't do this, you need to include the perf4j bundle as a "weaveDependency" in your aspectJ plugin configuration, and that forces those classes to be inlined into your project. By pre-weaving, we can include it as an "aspect library" instead, and it will not be inlined.
2. *The perf4j bundle.* This provides the Perf4j logging functionality, /system/perf4j servlet, the perf4j aspect on which the aspectj weaving depends, and the log4j dependencies.

The reason I used the log4j plugin instead of the the slf4j plugin was because it seemed to be the best supported. The slf4j logging did not have the Graphing log appenders.

More information about usage is here: https://oae-community.sakaiproject.org/content#p=mHywyCkM2b/Profiling Nakamura using Perf4j
Screencast: http://www.screencast.com/t/GSGKpVyae