Changelog ========= As of version ``1.0.0`` metrics-clojure is stable. New features will still be added, but backwards-incompatible changes should be very rare. We use `semantic versioning `_ to decide how to number versions, so you know what's going to happen when you upgrade. 2.3.0 ----- - Updated graphite reporter api to bring it in line with the console reporter. - Updated docs for console reporter and graphite reporter. 2.0.0 ----- Metrics Registries ~~~~~~~~~~~~~~~~~~ `metrics-clojure` 1.x maintained a metrics registry in a dynamic var. This approach makes the library a little easier for beginners but also much harder to use in more sophisticated cases, e.g. in concurrent applications or those that use a Component-like approach to program structure. As such, `metrics-clojure` 2.0+ makes metrics registry a required explicit argument to most functions in the API:: (require '[metrics.meters :as meters]) ;; with 1.x (meters/rate-mean) (meters/mark! 10) ;; with 2.0 (let [m (meters/meter ["test" "meters" "test-rate-mean-update-multiple"])] (meters/rate-mean m) (meters/mark! m 10)) The library maintains a default registry in `metrics.core/default-registry` which tries to keep the `1.x` API as functional as possible but using your own registry is encouraged. To instantiate a registry, use `metrics.core/new-registry`:: (require '[metrics.core :as mtr]) (mtr/new-registry) See `GH #19 `_ for discussion. defgauge Restricted to Functions Only ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In `metrics-clojure` 1.x, `metrics.gauges/defgauge` could accept a function or a bunch of forms (body). In 2.0, it only accepts a function. This is in part due to the new API structure but also make the API more straightforward and works much better with explicit registry management now advocated by the library. Nanoseconds Precision in Timers ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Metrics 3.0 uses nanoseconds precision in timers. Upgrade to Metrics 3.0 ~~~~~~~~~~~~~~~~~~~~~~ Metrics 3.0 is now used internally by the library. Clojure 1.3 No Longer Supported ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Clojure 1.3 is no longer supported by the library. 1.0.1 ----- Fixes compilation of ``defhistogram``, ``defcounter`` and friends. 1.0.0 ----- Initial stable release.