This provides a fairly simple SQLite powered backend for the metrics crate, useful for offline or desktop applications to gather metrics that can be easily queried afterwards.
- Now works with metrics 0.20.x
- _register!() macros aren't required & don't do anything with this exporter currently
- Unit/description now available via _describe!() macros metrics provides
- Now vacuums on setup which can incur a delay in being ready to record
- Migration of database blows away 0.2 data unfortunately
let exporter = SqliteExporter::new(
Duration::from_secs(30), // flush to sqlite on disk every 30s (or internal buffer limit)
Some(Duration::from_secs(60 * 60 * 24 * 7)), // 60 sec * 60 min * 24 hours * 7 days
"metrics.db",
)
.expect("Failed to create SqliteExporter");
exporter
.install()
.expect("Failed to install SqliteExporter");
// use metrics macros etc.
metrics::gauge!("mykey", 1.0);