extern crate libcantal;
#[macro_use] extern crate lazy_static;
#[macro_use] extern crate serde_json;
use std::io::stdout;
use std::time::Duration;
use std::thread::sleep;
use libcantal::{Counter, Integer, print, Value};
lazy_static! {
static ref COUNTER: Counter = Counter::new();
static ref INTEGER: Integer = Integer::new();
}
fn main() {
loop {
COUNTER.incr(1);
INTEGER.set((COUNTER.get() / 7) as i64);
print(&[
(json!({"metric": "counter"}), &*COUNTER as &Value),
(json!({"metric": "integer"}), &*INTEGER as &Value),
][..], stdout()).expect("can always print");
sleep(Duration::new(1, 0));
}
}