Crate denet

Crate denet 

Source
Expand description

Denet: A high-performance process monitoring library

Denet provides accurate measurement of process resource usage, including CPU, memory, disk I/O, and network I/O. It’s designed to be lightweight, accurate, and cross-platform.

§Architecture

The library is organized into focused modules:

  • core: Pure Rust monitoring functionality
  • monitor: Metrics types and summary generation
  • config: Configuration structures and builders
  • error: Comprehensive error handling
  • cpu_sampler: Platform-specific CPU measurement
  • python: PyO3 bindings (when feature is enabled)

§Platform Support

CPU measurement strategies:

  • Linux: Direct procfs reading - matches top/htop measurements
  • macOS: Will use host_processor_info API and libproc (planned)
  • Windows: Will use GetProcessTimes and Performance Counters (planned)

Re-exports§

pub use core::ProcessMonitor;
pub use core::ProcessResult;
pub use config::DenetConfig;
pub use config::MonitorConfig;
pub use config::OutputConfig;
pub use config::OutputFormat;
pub use error::DenetError;
pub use error::Result;
pub use monitor::*;

Modules§

config
Configuration structures for denet monitoring
core
Core process monitoring functionality
cpu_sampler
CPU usage measurement module
error
Error types for the denet library
monitor
Process monitoring module

Functions§

run_monitor
Run a simple monitoring loop with better error handling and configuration