Commit Graph

16 Commits

Author SHA1 Message Date
Toby Lawrence b2e87d7a7f
Release preparation. (meta) (#41)
* Cut new releases for all modified crates.
2019-07-30 17:08:19 -04:00
Toby Lawrence ed80f3307e
feature: add a JSON observer (#38) 2019-07-23 12:25:49 -04:00
jean-airoldie e614847de6 core: Recorder -> Observer (#35) 2019-07-17 09:06:45 -04:00
Toby Lawrence ad72bc16c1
core: add Builder trait for recorders (#30)
This change adds a new trait -- `Builder` -- which defines a value that
can create new recorder instances.

As we have a need to generate owned recorders, in particular for
futures-based code, the `Builder` trait provides a way to do so without
any jankiness, such as the prior Clone-based approach.

As such, all exporters now expect a builder to be passed in, rather than
the recorder itself.
2019-07-15 09:35:34 -04:00
Toby Lawrence d459db8084
Add label support + rename crates. (#27) 2019-07-05 21:14:08 -04:00
Toby Lawrence 1de4343fc5
Add metrics-facade crate to provide global macros. (#20)
Add support for a `log`-esque crate that can provide globally-installed metrics collection and ingest via basic macros.
2019-06-11 11:54:27 -04:00
Toby Lawrence bef5daa908
Bump metrics-exporter-log to 0.2.0 2019-05-01 11:45:50 -04:00
Toby Lawrence 8b7088d0d9
Bump metrics-core to 0.3.0 2019-04-30 09:04:15 -04:00
Toby Lawrence f699b5ad04
Merge pull request #8 from metrics-rs/tobz/facade-modules
Add snapshot traits and expose exporters/recorders from metrics.
2019-04-29 22:17:29 -04:00
Toby Lawrence 1ebfc9cf49
Fixing up PR feedback. 2019-04-29 22:16:48 -04:00
Toby Lawrence caba3089f2
Use error! directly instead of log! 2019-04-26 14:21:44 -04:00
Toby Lawrence fe6a12330d
Simplify core trait names + add associated type constraints. 2019-04-26 14:20:40 -04:00
Toby Lawrence 55d1708e10
Add snapshot traits and expose exporters/recorders from metrics.
We now expose all exporters and recorders via facade modules in the
metrics crate, called metrics::exporters and metrics::recorders,
respectively.  This means that the metrics crate itself has these are
optional dependencies, which are included by the default set of
features, and so can be turned off by consumers.

To curtail the issue of cyclical dependencies, we've also introduced
three new traits: MetricsSnapshot, SnapshotProvider, and
AsyncSnapshotProvider.

These traits let us represent metrics::Controller and
metrics::data::snapshot::Snapshot in the exporter, allowing us to get
around the cyclical dependency but also expose more flexibility and
modularity.
2019-04-25 12:59:37 -04:00
Toby Lawrence 5e3540e823
Small UI tweak to the CoC. 2019-04-24 08:09:13 -04:00
Toby Lawrence c073b2d417
Fix up the CoC and make it consistent + add license. 2019-04-24 08:06:48 -04:00
Toby Lawrence caa09f15fe commit metrics-exporter-log v0.1.0 2019-04-23 21:40:56 -04:00