Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Encoding of ekg metrics as JSON. The encoding defined by the functions in this module are standardized and used by the ekg web UI. The purpose of this module is to let other web servers and frameworks than the one used by the ekg package expose ekg metrics.
Converting metrics to JSON values
sampleToJson :: Sample -> Value Source #
Encode metrics as nested JSON objects. Each "." in the metric
name introduces a new level of nesting. For example, the metrics
[("foo.bar", 10), ("foo.baz", "label")]
are encoded as
{ "foo": { "bar": { "type:", "c", "val": 10 }, "baz": { "type": "l", "val": "label" } } }
valueToJson :: Value -> Value Source #
Encodes a single metric as a JSON object. Example:
{ "type": "c", "val": 89460 }
Newtype wrappers with instances
Newtype wrapper that provides a ToJSON
instances for the
underlying Sample
without creating an orphan instance.