+1, I've used codehale metrics in my last few projects (Llama is one of them) and I love it.
I'd suggest the following, lets create a new Instrumentation class delegates to metrics, then people can chose to upgrade. In Oozie 5 we can swap the default instrumentation in the oozie-default.xml to metrics. I'd add Hadoop JMX JSON Servlet to Oozie, if metrics is not used, the servlet would just report JVM metric, if metrics is used, everything will come out there. Thx. On Mon, May 5, 2014 at 1:23 PM, Robert Kanter <[email protected]> wrote: > Hi all, > > The JIRA at OOZIE-1817 > <https://issues.apache.org/jira/browse/OOZIE-1817>wants to make the > instrumentation timers biased; that is, to make them look > only at the last X amount of time, instead of forever. When trying > monitoring Oozie, if your Oozie server has been running a long time, they > become less useful. > > While looking at some of the instrumentation code, I also saw that in a lot > of places, we create and use a timer (i.e. a Cron object), but we never add > it to the Instrumentation, so it's never actually reported to the user, and > is essentially wasteful and useless. > > We haven't really touched our instrumentation code in a while, and I was > thinking it might be a good idea to switch to using a library like Codahale > Metrics (also called Yammer Metrics). They include a bunch of stuff for us > (e.g. JVM and servlet metrics) and do all of the math for computing > standard deviation, percentiles, etc. It also looks like most of the > metric types can be upgraded more immediately, instead of every minute. > Their API looks pretty similar to what we already have, so it shouldn't be > too hard to switch over. Their "Getting Started" page is here if you want > to see more about it: http://metrics.codahale.com/getting-started/ > > We'd have to keep the current Instrumentation for Oozie 4.x, but we could > add a /v2/metrics URL for the new one and deprecate the old one. > > Thoughts? > > > thanks > - Robert > -- Alejandro
