mprober_lib/lib.rs
1/*!
2# M Prober Lib
3
4This crate aims to quickly collect Linux system information including hostname, kernel version, uptime, RTC time, load average, CPU, memory, network interfaces, block devices and processes.
5
6## Examples
7
8```rust
9use mprober_lib::*;
10
11println!("{}", hostname::get_hostname().unwrap());
12println!("{}", kernel::get_kernel_version().unwrap());
13println!("{}", btime::get_btime());
14println!("{}", rtc_time::get_rtc_date_time().unwrap());
15println!("{:#?}", uptime::get_uptime().unwrap());
16println!("{:#?}", load_average::get_load_average().unwrap());
17println!("{:#?}", cpu::get_cpus().unwrap());
18println!("{:#?}", memory::free().unwrap());
19println!("{:#?}", volume::get_volumes().unwrap());
20println!("{:#?}", network::get_networks().unwrap());
21println!("{:#?}", process::get_processes_with_stat(&process::ProcessFilter::default()).unwrap().into_iter().map(|(process, _)| process).collect::<Vec<process::Process>>());
22```
23
24## Benchmark
25
26```bash
27cargo bench
28```
29*/
30
31pub extern crate scanner_rust;
32
33mod functions;
34
35pub mod btime;
36pub mod cpu;
37pub mod hostname;
38pub mod kernel;
39pub mod load_average;
40pub mod memory;
41pub mod network;
42pub mod process;
43pub mod rtc_time;
44pub mod uptime;
45pub mod volume;
46
47pub use functions::*;
48pub use scanner_rust::ScannerError;