diff options
Diffstat (limited to 'examples/stats.rs')
-rw-r--r-- | examples/stats.rs | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/examples/stats.rs b/examples/stats.rs index 9a0f38d..f136326 100644 --- a/examples/stats.rs +++ b/examples/stats.rs @@ -1,15 +1,23 @@ extern crate shiplift; +extern crate tokio; use shiplift::Docker; use std::env; +use tokio::prelude::{Future, Stream}; fn main() { let docker = Docker::new(); let containers = docker.containers(); - if let Some(id) = env::args().nth(1) { - let stats = containers.get(&id).stats(); - for s in stats.unwrap() { - println!("{:?}", s); - } - } + let id = env::args() + .nth(1) + .expect("Usage: cargo run --example stats -- <container>"); + let fut = containers + .get(&id) + .stats() + .for_each(|stat| { + println!("{:?}", stat); + Ok(()) + }) + .map_err(|e| eprintln!("Error: {}", e)); + tokio::run(fut); } |