# Ratatouille
[![DOI](https://zenodo.org/badge/173307160.svg)](https://zenodo.org/badge/latestdoi/173307160)
## Installation
The best way to install `ratatouille` is from pypi:
```sh
pip install ratatouille
```
Alternatively, you can install from `master` as follows:
```sh
pip install git+https://github.com/Ezibenroc/ratatouille.git
```
## Example of usage
Collect data in file `/tmp/data.csv` with a 3 seconds interval (press Ctr-C to stop).
```sh
ratatouille collect -t 3 all /tmp/data.csv
```
Collect only the temperature and frequency:
```sh
ratatouille collect -t 3 cpu_freq temperature /tmp/data.csv
```
Plot the data stored in file `/tmp/data.csv`.
```sh
ratatouille plot /tmp/data.csv
```
For this last command, you need to install extra dependencies:
```sh
pip install pandas plotnine
```
## Collected data
When collecting data you can either collect all data (with the `all` target argument) or a subset of the data:
- `cpu_freq` collects the frequency (in `Hertz`) of each *logical* CPU core listed in `/sys/devices/system/cpu/`.
- `cpu_load` collects the percentage load of the CPUs.
- `cpu_power` computes the average power consumption (in `Watts`) of each package listed in `/sys/devices/virtual/powercap/intel-rapl/` between two intervals. Additional values for the `core`, `uncore` and `dram` are also collected if available.
- `cpu_stats` collects the total number of context switches, interrupts and soft_interrupts since boot.
- `fan_speed` collects the rotation speed of fans.
- `memory_usage` collects the current memory available (in bytes) and its percentage over the total memory.
- `network` collects the total number of bytes sent and received on each network interface.
- `temperature` collects the temperature (in Celsius or Farenheit degrees, depending on your configuration) of each *physical* CPU core and other thermal sensors.
Notice that `cpu_load`, `cpu_stats`, `fan_speed`, `memory_usage`, `network` and `temperature` rely on [psutil](https://github.com/giampaolo/psutil) to collect data.
Raw data
{
"_id": null,
"home_page": "https://github.com/Ezibenroc/ratatouille",
"name": "ratatouille",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "Tom Cornebize",
"author_email": "tom.cornebize@gmail.com",
"download_url": "",
"platform": null,
"description": "# Ratatouille\n\n[![DOI](https://zenodo.org/badge/173307160.svg)](https://zenodo.org/badge/latestdoi/173307160)\n\n## Installation\n\nThe best way to install `ratatouille` is from pypi:\n```sh\npip install ratatouille\n```\n\nAlternatively, you can install from `master` as follows:\n```sh\npip install git+https://github.com/Ezibenroc/ratatouille.git\n```\n\n## Example of usage\n\nCollect data in file `/tmp/data.csv` with a 3 seconds interval (press Ctr-C to stop).\n```sh\nratatouille collect -t 3 all /tmp/data.csv\n```\n\nCollect only the temperature and frequency:\n```sh\nratatouille collect -t 3 cpu_freq temperature /tmp/data.csv\n```\n\nPlot the data stored in file `/tmp/data.csv`.\n```sh\nratatouille plot /tmp/data.csv\n```\n\nFor this last command, you need to install extra dependencies:\n```sh\npip install pandas plotnine\n```\n\n## Collected data\n\nWhen collecting data you can either collect all data (with the `all` target argument) or a subset of the data:\n\n- `cpu_freq` collects the frequency (in `Hertz`) of each *logical* CPU core listed in `/sys/devices/system/cpu/`.\n- `cpu_load` collects the percentage load of the CPUs.\n- `cpu_power` computes the average power consumption (in `Watts`) of each package listed in `/sys/devices/virtual/powercap/intel-rapl/` between two intervals. Additional values for the `core`, `uncore` and `dram` are also collected if available.\n- `cpu_stats` collects the total number of context switches, interrupts and soft_interrupts since boot.\n- `fan_speed` collects the rotation speed of fans.\n- `memory_usage` collects the current memory available (in bytes) and its percentage over the total memory.\n- `network` collects the total number of bytes sent and received on each network interface.\n- `temperature` collects the temperature (in Celsius or Farenheit degrees, depending on your configuration) of each *physical* CPU core and other thermal sensors.\n\nNotice that `cpu_load`, `cpu_stats`, `fan_speed`, `memory_usage`, `network` and `temperature` rely on [psutil](https://github.com/giampaolo/psutil) to collect data.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "System usage monitoring tool",
"version": "0.1.2",
"project_urls": {
"Homepage": "https://github.com/Ezibenroc/ratatouille"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "54b3f66e53563b47989d5769320de37aad057ff86a7ac892f339d78946f27e38",
"md5": "f033a816dee547c413a341e904304371",
"sha256": "bca81c08a7ec257bbc9bc379b72bb3fb1cde09ff5e6b448e89691122c096a61c"
},
"downloads": -1,
"filename": "ratatouille-0.1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f033a816dee547c413a341e904304371",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 7874,
"upload_time": "2023-08-29T20:22:23",
"upload_time_iso_8601": "2023-08-29T20:22:23.798418Z",
"url": "https://files.pythonhosted.org/packages/54/b3/f66e53563b47989d5769320de37aad057ff86a7ac892f339d78946f27e38/ratatouille-0.1.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-29 20:22:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Ezibenroc",
"github_project": "ratatouille",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ratatouille"
}