File: README.md

package info (click to toggle)
rust-proc-status 0.1.1-1
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 112 kB
  • sloc: makefile: 4
file content (61 lines) | stat: -rw-r--r-- 1,513 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
[![MIT][s2]][l2] [![Latest Version][s1]][l0] [![docs][s3]][l3] [![Chat on Miaou][s4]][l4]

[s1]: https://img.shields.io/crates/v/proc-status.svg
[l1]: https://crates.io/crates/proc-status

[s2]: https://img.shields.io/badge/license-MIT-blue.svg
[l2]: LICENSE

[s3]: https://docs.rs/proc-status/badge.svg
[l3]: https://docs.rs/proc-status/

[s4]: https://miaou.dystroy.org/static/shields/room.svg
[l4]: https://miaou.dystroy.org/3

# proc-status

basic process information

The data comes from `/proc/<pid>/process` and is only
available on unix-like systems.

This crate aims at keeping very simple.
If it doesn't cover your needs, you should probably have a look
at the much more complete [procfs](https://crates.io/crates/procfs).

# Examples:

## Dump memory info about the current process:

```
let mem = proc_status::mem_usage().unwrap();
println!("Mem usage in bytes: current={}, peak={}", mem.current, mem.peak);
```
This prints something like

```stdout
Mem usage in bytes: current=1232896, peak=141430784
```


## Print all the fields of the current process' status:

```
use proc_status::ProcStatus;

let ps = ProcStatus::read().unwrap();
for entry in ps.entries() {
    let entry = entry.unwrap();
    println!("{} = {:?}", entry.key, entry.value);
}
```

## Get the raw value of specific entries

```
use proc_status::ProcStatus;

let ps = ProcStatus::read().unwrap();
println!("State: {:?}", ps.value("State").unwrap());
println!("VmPeak in bytes: {:?}", ps.value_KiB("VmPeak").unwrap() * 1024);
```