riemann.instrumentation

Tracks Riemann performance data

Instrumented

protocol

These things can be asked to report events about their performance and health.

members

events

(events this)

Returns a sequence of events describing the current state of the object.

instrumented?

(instrumented? thingy)

Does a thingy provide instrumentation?

measure-latency

macro

(measure-latency metric & body)

Wraps body in a macro which reports its running time in nanoseconds to a Metric.

nanos->millis

(nanos->millis nanos)

Convert nanoseconds to milliseconds.

rate+latency

(rate+latency event)(rate+latency ev quantiles)

Returns a Metric which can be updated with latency measurements. When asked for events, returns a rate of total throughput, plus the given quantiles of latency metrics. Takes an optional base event which is used as the template. Input latencies are in nanoseconds (for storage as longs), emits latencies as doubles in milliseconds.