Skip to main content

monitrs_core/model/
mod.rs

1//! The platform-neutral data model.
2//!
3//! Every type here is plain data. Nothing in this module knows how `/proc` is
4//! parsed or how a process row is coloured — that is the dependency direction
5//! §10.1 requires, and it is what makes the whole model testable with fixtures.
6
7mod capability;
8mod cpu;
9mod health;
10mod host;
11mod identity;
12mod measurement;
13mod memory;
14mod metric;
15mod network;
16mod pressure;
17mod process;
18mod sensors;
19mod snapshot;
20mod storage;
21
22pub use capability::{CapabilitySnapshot, CapabilityState};
23pub use cpu::{
24    CoreClass, CpuBreakdown, CpuNormalization, CpuQuota, CpuSnapshot, CpuUsage, LoadSnapshot,
25};
26pub use health::{
27    CollectorHealth, CollectorIssue, MAX_RETAINED_ISSUES, SelfOverhead, Tier, TierHealth,
28};
29pub use host::{
30    ContainerIdentity, ContainerRuntime, EnvironmentKind, HostEnvironment, HostSnapshot,
31};
32pub use identity::{ProcessIdentity, UserIdentity};
33pub use measurement::{Confidence, MeasuredValue, Measurement, Severity};
34pub use memory::{MemoryDetail, MemorySemantics, MemorySnapshot, SwapSnapshot};
35pub use metric::{MetricState, UnavailableReason};
36pub use network::{
37    InterfaceAddress, InterfaceErrors, InterfaceKind, LinkState, NetworkSnapshot, TrafficTotals,
38};
39pub use pressure::{
40    PressureId, PressureSignal, PressureSnapshot, PressureState, PsiResource, PsiSnapshot,
41};
42pub use process::{
43    AncestorEntry, OpenFileEntry, OpenFileKind, OpenFileList, ProcessDetail, ProcessDetailResult,
44    ProcessIo, ProcessMemory, ProcessSnapshot, ProcessState,
45};
46pub use sensors::{
47    BatteryCapacity, BatterySnapshot, ChargeState, SensorSnapshot, TemperatureReading,
48};
49pub use snapshot::SystemSnapshot;
50pub use storage::{DiskSnapshot, DiskTotals, FilesystemKind, FilesystemSnapshot, InodeUsage};