Skip to content


Subversion checkout URL

You can clone with
Download ZIP


* Added an option message to successful health check results.
* Fixed locale issues in `GraphiteReporter`.
* Added `GangliaReporter`.
* Added per-HTTP method timers to `InstrumentedHandler` in `metrics-jetty`.
* Fixed a thread pool leak for meters.
* Added `#dump(File)` to `HistogramMetric` and `TimerMetric`.
* Upgraded to Jackson 1.9.x.
* Upgraded to slf4j 1.6.2.
* Upgraded to logback 0.9.30.
* Upgraded to ehcache 2.4.5.
* Surfaced `Metrics.removeMetric()`.


* Fixed a bug in GC monitoring.


* Fixed dependency scopes for `metrics-jetty`.
* Added time and VM version to `vm` output of `MetricsServlet`.
* Dropped `com.sun.mangement`-based GC instrumentation in favor of a
  ``-based one. `getLastGcInfo` has a nasty native memory
  leak in it, plus it often returned incorrect data.
* Upgraded to Jackson 1.8.5.
* Upgraded to Jetty 7.4.5.
* Added sanitization for metric names in `GraphiteReporter`.
* Extracted out a `Clock` interface for timers for non-wall-clock timing.
* Extracted out most of the remaining statics into `MetricsRegistry` and
* Added an init parameter to `MetricsServlet` for disabling the `jvm` section.
* Added a Guice module for `MetricsServlet`.
* Added dynamic metric names.
* Upgraded to ehcache 2.4.5.
* Upgraded to logback 0.9.29.
* Allowed for the removal of metrics.
* Added the ability to filter metrics exposed by a reporter to those which match
  a given predicate.


* Moved to Maven for a build system and extracted the Scala façade to a
  `metrics-scala` module which is now the only cross-built module. All other
  modules dropped the Scala version suffix in their `artifactId`s.
* Fixed non-heap metric name in `GraphiteReporter`.
* Fixed stability error in `GraphiteReporter` when dealing with unavilable
* Fixed error with anonymous, instrumented classes.
* Fixed error in `MetricsServlet` when a gauge throws an exception.
* Fixed error with bogus GC run times.
* Link to the pretty JSON output from the `MetricsServlet` menu page.
* Fixed potential race condition in histograms' variance calculations.
* Fixed memory pool reporting for the G1 collector.


* Fixed a bug in the intial startup phase of the `JmxReporter`.
* Added `metrics-ehcache`, for the instrumentation of `Ehcache` instances.
* Fixed a typo in `metrics-jetty`'s `InstrumentedHandler`.
* Added name prefixes to `GraphiteReporter`.
* Added JVM metrics reporting to `GraphiteReporter`.
* Actually fixed `MetricsServlet`'s links when the servlet has a non-root
  context path.
* Now cross-building for Scala 2.9.0.
* Added `pretty` query parameter for `MetricsServlet` to format the JSON object
  for human consumption.
* Added `no-cache` headers to the `MetricsServlet` responses.


* Upgraded to Jackson 1.7.6.
* Added a new instrumented Log4J appender.
* Added a new instrumented Logback appender. Thanks to Bruce Mitchener
  (@waywardmonkeys) for the patch.
* Added a new reporter for the [Graphite](
  aggregation system. Thanks to Mahesh Tiyyagura (@tmahesh) for the patch.
* Added scoped metric names.
* Added Scala 2.9.0.RC{2,3,4} as build targets.
* Added meters to Jetty handler for the percent of responses which have `4xx` or
  `5xx` status codes.
* Changed the Servlet API to be a `provided` dependency. Thanks to Mårten
  Gustafson (@chids) for the patch.
* Separated project into modules:
  * `metrics-core`: A dependency-less project with all the core metrics.
  * `metrics-graphite`: A reporter for the [Graphite](
    aggregation system.
  * `metrics-guice`: Guice AOP support.
  * `metrics-jetty`: An instrumented Jetty handler.
  * `metrics-log4j`: An instrumented Log4J appender.
  * `metrics-logback`: An instrumented Logback appender.
  * `metrics-servlet`: The Metrics servlet with context listener.


* added DeadlockHealthCheck
* added thread state breakdown
* upgrade to Jackson 1.7.5
* added @Gauge annotation
* fixed EWMA code for meters
* many bug fixes


Huge refactoring
Guice integration
Smells more like cement and rain


Added ExponentiallyDecayingSample.
Fixed an int overflow.
Added default args.
Something went wrong with that request. Please try again.