mirror of
https://github.com/nicolargo/glances.git
synced 2024-09-11 12:47:14 +03:00
Compare commits
3 Commits
99e65079a0
...
9b853d857b
Author | SHA1 | Date | |
---|---|---|---|
|
9b853d857b | ||
|
f4c7ca01fe | ||
|
60591630df |
@ -6,7 +6,7 @@ In the interest of fostering an open and welcoming environment, we as
|
|||||||
contributors and maintainers pledge to making participation in our project and
|
contributors and maintainers pledge to making participation in our project and
|
||||||
our community a harassment-free experience for everyone, regardless of age, body
|
our community a harassment-free experience for everyone, regardless of age, body
|
||||||
size, disability, ethnicity, gender identity and expression, level of experience,
|
size, disability, ethnicity, gender identity and expression, level of experience,
|
||||||
education, socio-economic status, nationality, personal appearance, race,
|
education, socioeconomic status, nationality, personal appearance, race,
|
||||||
religion, or sexual identity and orientation.
|
religion, or sexual identity and orientation.
|
||||||
|
|
||||||
## Our Standards
|
## Our Standards
|
||||||
|
4
Makefile
4
Makefile
@ -93,7 +93,7 @@ lint: ## Lint the code.
|
|||||||
./venv-dev/bin/python -m ruff check . --fix
|
./venv-dev/bin/python -m ruff check . --fix
|
||||||
|
|
||||||
codespell: ## Run codespell to fix common misspellings in text files
|
codespell: ## Run codespell to fix common misspellings in text files
|
||||||
./venv-dev/bin/codespell -S .git,./docs/_build,./Glances.egg-info,./venv*,./glances/outputs,*.svg -L hart,bu,te,statics
|
./venv-dev/bin/codespell -S .git,./docs/_build,./Glances.egg-info,./venv*,./glances/outputs,*.svg -L hart,bu,te,statics -w
|
||||||
|
|
||||||
semgrep: ## Run semgrep to find bugs and enforce code standards
|
semgrep: ## Run semgrep to find bugs and enforce code standards
|
||||||
./venv-dev/bin/semgrep scan --config=auto
|
./venv-dev/bin/semgrep scan --config=auto
|
||||||
@ -185,7 +185,7 @@ flatpak: venv-dev-upgrade ## Generate FlatPack JSON file
|
|||||||
rm -rf ./flatpak-builder-tools
|
rm -rf ./flatpak-builder-tools
|
||||||
@echo "Now follow: https://github.com/flathub/flathub/wiki/App-Submission"
|
@echo "Now follow: https://github.com/flathub/flathub/wiki/App-Submission"
|
||||||
|
|
||||||
# Snap package is automaticaly build on the Snapcraft.io platform
|
# Snap package is automatically build on the Snapcraft.io platform
|
||||||
# https://snapcraft.io/glances
|
# https://snapcraft.io/glances
|
||||||
# But you can try an offline build with the following command
|
# But you can try an offline build with the following command
|
||||||
snapcraft:
|
snapcraft:
|
||||||
|
24
NEWS.rst
24
NEWS.rst
@ -31,8 +31,8 @@ Enhancements:
|
|||||||
Bug corrected:
|
Bug corrected:
|
||||||
|
|
||||||
* API: Network module is disabled but appears in endpoint "all" #2815
|
* API: Network module is disabled but appears in endpoint "all" #2815
|
||||||
* API is not compatible with requests containing spcial/encoding char #2820
|
* API is not compatible with requests containing special/encoding char #2820
|
||||||
* 'j' hot key crashs Glances #2831
|
* 'j' hot key crashes Glances #2831
|
||||||
* Raspberry PI - CPU info is not correct #2616
|
* Raspberry PI - CPU info is not correct #2616
|
||||||
* Graph export is broken if there is no graph section in Glances configuration file #2839
|
* Graph export is broken if there is no graph section in Glances configuration file #2839
|
||||||
* Glances API status check returns Error 405 - Method Not Allowed #2841
|
* Glances API status check returns Error 405 - Method Not Allowed #2841
|
||||||
@ -41,17 +41,17 @@ Bug corrected:
|
|||||||
* Exception when Glances is ran with limited plugin list #2822
|
* Exception when Glances is ran with limited plugin list #2822
|
||||||
* Disable separator option do not work #2823
|
* Disable separator option do not work #2823
|
||||||
|
|
||||||
Continious integration and documentation:
|
Continuous integration and documentation:
|
||||||
|
|
||||||
* test test_107_fs_plugin_method fails on aarch64-linux #2819
|
* test test_107_fs_plugin_method fails on aarch64-linux #2819
|
||||||
|
|
||||||
Thanks to all contibutors and bug reporters !
|
Thanks to all contributors and bug reporters !
|
||||||
|
|
||||||
Special thanks to:
|
Special thanks to:
|
||||||
|
|
||||||
* Bharath Vignesh J K
|
* Bharath Vignesh J K
|
||||||
* RazCrimson
|
* RazCrimson
|
||||||
* Vadim Smal
|
* Vadim Small
|
||||||
|
|
||||||
===============
|
===============
|
||||||
Version 4.0.8
|
Version 4.0.8
|
||||||
@ -226,7 +226,7 @@ Many thinks to the contributors:
|
|||||||
* Christoph Zimmermann
|
* Christoph Zimmermann
|
||||||
* RazCrimson
|
* RazCrimson
|
||||||
* Robin Candau
|
* Robin Candau
|
||||||
* Github GPG acces
|
* Github GPG access
|
||||||
* Continuous Integration
|
* Continuous Integration
|
||||||
* Georgiy Timchenko
|
* Georgiy Timchenko
|
||||||
* turbocrime
|
* turbocrime
|
||||||
@ -400,7 +400,7 @@ Documentation and CI:
|
|||||||
* Update Makefile with comments
|
* Update Makefile with comments
|
||||||
* Update Python minimal requirement for py3nvlm
|
* Update Python minimal requirement for py3nvlm
|
||||||
* Update security policy (user can open private issue directly in Github)
|
* Update security policy (user can open private issue directly in Github)
|
||||||
* Add a simple run script. Entry point for IDE debuger
|
* Add a simple run script. Entry point for IDE debugger
|
||||||
|
|
||||||
Cyber security update:
|
Cyber security update:
|
||||||
|
|
||||||
@ -429,7 +429,7 @@ And also a big thanks to @RazCrimson (https://github.com/RazCrimson) for the sup
|
|||||||
Version 3.3.0.4
|
Version 3.3.0.4
|
||||||
===============
|
===============
|
||||||
|
|
||||||
Refactor the Docker images factory, from now, only Alpine image wll be provided.
|
Refactor the Docker images factory, from now, only Alpine image will be provided.
|
||||||
|
|
||||||
The following Docker images (nicolargo/glances) are availables:
|
The following Docker images (nicolargo/glances) are availables:
|
||||||
|
|
||||||
@ -477,9 +477,9 @@ Bug corrected:
|
|||||||
* Correct issue with the regexp filter (use fullmatch instead of match)
|
* Correct issue with the regexp filter (use fullmatch instead of match)
|
||||||
* Errors when running Glances as web service #1702
|
* Errors when running Glances as web service #1702
|
||||||
* Apply alias to Duplicate sensor name #1686
|
* Apply alias to Duplicate sensor name #1686
|
||||||
* Make the hide function in sensors section compliant with lower/upercase #1590
|
* Make the hide function in sensors section compliant with lower/uppercase #1590
|
||||||
* Web UI truncates the days part of CPU time counter of the process list #2108
|
* Web UI truncates the days part of CPU time counter of the process list #2108
|
||||||
* Correct alignement issue with the diskio plugin (Console UI)
|
* Correct alignment issue with the diskio plugin (Console UI)
|
||||||
|
|
||||||
Documentation and CI:
|
Documentation and CI:
|
||||||
|
|
||||||
@ -746,7 +746,7 @@ Bugs corrected:
|
|||||||
* Docker containers information missing with Docker 20.10.x #1878
|
* Docker containers information missing with Docker 20.10.x #1878
|
||||||
* Get system sensors temperatures thresholds #1864
|
* Get system sensors temperatures thresholds #1864
|
||||||
|
|
||||||
Contibutors for this version:
|
Contributors for this version:
|
||||||
|
|
||||||
* Nicolargo
|
* Nicolargo
|
||||||
* Markus Pöschl
|
* Markus Pöschl
|
||||||
@ -1353,7 +1353,7 @@ Enhancements and new features:
|
|||||||
* Add ZeroMQ exporter (issue #939)
|
* Add ZeroMQ exporter (issue #939)
|
||||||
* Add CouchDB exporter (issue #928)
|
* Add CouchDB exporter (issue #928)
|
||||||
* Add hotspot Wifi information (issue #937)
|
* Add hotspot Wifi information (issue #937)
|
||||||
* Add default interface speed and automatic rate thresolds (issue #718)
|
* Add default interface speed and automatic rate thresholds (issue #718)
|
||||||
* Highlight max stats in the processes list (issue #878)
|
* Highlight max stats in the processes list (issue #878)
|
||||||
* Docker alerts and actions (issue #875)
|
* Docker alerts and actions (issue #875)
|
||||||
* Glances API returns the processes PPID (issue #926)
|
* Glances API returns the processes PPID (issue #926)
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Glances - An eye on your system
|
Glances - An eye on your system
|
||||||
===============================
|
===============================
|
||||||
|
|
||||||
| |pypi| |test| |contibutors| |quality|
|
| |pypi| |test| |contributors| |quality|
|
||||||
| |starts| |docker| |pypistat|
|
| |starts| |docker| |pypistat|
|
||||||
| |sponsors| |twitter|
|
| |sponsors| |twitter|
|
||||||
|
|
||||||
@ -25,9 +25,9 @@ Glances - An eye on your system
|
|||||||
:target: https://github.com/nicolargo/glances/actions
|
:target: https://github.com/nicolargo/glances/actions
|
||||||
:alt: Linux tests (GitHub Actions)
|
:alt: Linux tests (GitHub Actions)
|
||||||
|
|
||||||
.. |contibutors| image:: https://img.shields.io/github/contributors/nicolargo/glances
|
.. |contributors| image:: https://img.shields.io/github/contributors/nicolargo/glances
|
||||||
:target: https://github.com/nicolargo/glances/issues?q=is%3Aissue+is%3Aopen+label%3A%22needs+contributor%22
|
:target: https://github.com/nicolargo/glances/issues?q=is%3Aissue+is%3Aopen+label%3A%22needs+contributor%22
|
||||||
:alt: Contibutors
|
:alt: Contributors
|
||||||
|
|
||||||
.. |quality| image:: https://scrutinizer-ci.com/g/nicolargo/glances/badges/quality-score.png?b=develop
|
.. |quality| image:: https://scrutinizer-ci.com/g/nicolargo/glances/badges/quality-score.png?b=develop
|
||||||
:target: https://scrutinizer-ci.com/g/nicolargo/glances/?branch=develop
|
:target: https://scrutinizer-ci.com/g/nicolargo/glances/?branch=develop
|
||||||
@ -141,7 +141,7 @@ stable version.
|
|||||||
To install Glances, simply use the ``pip`` command line.
|
To install Glances, simply use the ``pip`` command line.
|
||||||
|
|
||||||
Warning: on modern Linux operating systems, you may have an externally-managed-environment
|
Warning: on modern Linux operating systems, you may have an externally-managed-environment
|
||||||
error message when you try to use ``pip``. In this case, go to the the PipX section bellow.
|
error message when you try to use ``pip``. In this case, go to the the PipX section below.
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
|
@ -375,7 +375,7 @@ temperature_hdd_critical=60
|
|||||||
battery_careful=80
|
battery_careful=80
|
||||||
battery_warning=90
|
battery_warning=90
|
||||||
battery_critical=95
|
battery_critical=95
|
||||||
# Fan speed threashold in RPM
|
# Fan speed threshold in RPM
|
||||||
#fan_speed_careful=100
|
#fan_speed_careful=100
|
||||||
# Sensors alias
|
# Sensors alias
|
||||||
#alias=core 0:CPU Core 0,core 1:CPU Core 1
|
#alias=core 0:CPU Core 0,core 1:CPU Core 1
|
||||||
|
@ -27,7 +27,7 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
- TZ=${TZ}
|
- TZ=${TZ}
|
||||||
- "GLANCES_OPT=-C /glances/conf/glances.conf -w"
|
- "GLANCES_OPT=-C /glances/conf/glances.conf -w"
|
||||||
# Uncomment for GPU compatibilty (Nvidia) inside the container
|
# Uncomment for GPU compatibility (Nvidia) inside the container
|
||||||
# deploy:
|
# deploy:
|
||||||
# resources:
|
# resources:
|
||||||
# reservations:
|
# reservations:
|
||||||
|
@ -15,7 +15,7 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
- TZ=${TZ}
|
- TZ=${TZ}
|
||||||
- "GLANCES_OPT=-C /glances/conf/glances.conf -w"
|
- "GLANCES_OPT=-C /glances/conf/glances.conf -w"
|
||||||
# Uncomment for GPU compatibilty (Nvidia) inside the container
|
# Uncomment for GPU compatibility (Nvidia) inside the container
|
||||||
# deploy:
|
# deploy:
|
||||||
# resources:
|
# resources:
|
||||||
# reservations:
|
# reservations:
|
||||||
|
@ -375,7 +375,7 @@ temperature_hdd_critical=60
|
|||||||
battery_careful=80
|
battery_careful=80
|
||||||
battery_warning=90
|
battery_warning=90
|
||||||
battery_critical=95
|
battery_critical=95
|
||||||
# Fan speed threashold in RPM
|
# Fan speed threshold in RPM
|
||||||
#fan_speed_careful=100
|
#fan_speed_careful=100
|
||||||
# Sensors alias
|
# Sensors alias
|
||||||
#alias=core 0:CPU Core 0,core 1:CPU Core 1
|
#alias=core 0:CPU Core 0,core 1:CPU Core 1
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
CLOUD
|
CLOUD
|
||||||
=====
|
=====
|
||||||
|
|
||||||
This plugin diplays information about the cloud provider if your host is running on OpenStack.
|
This plugin displays information about the cloud provider if your host is running on OpenStack.
|
||||||
|
|
||||||
The plugin use the standard OpenStack `metadata`_ service to retrieve the information.
|
The plugin use the standard OpenStack `metadata`_ service to retrieve the information.
|
||||||
|
|
||||||
|
@ -53,7 +53,7 @@ To switch to per-CPU stats, just hit the ``1`` key:
|
|||||||
.. image:: ../_static/per-cpu.png
|
.. image:: ../_static/per-cpu.png
|
||||||
|
|
||||||
In this case, Glances will show on line per logical CPU on the system.
|
In this case, Glances will show on line per logical CPU on the system.
|
||||||
If you have multiple core, it is possible to define the maximun number
|
If you have multiple core, it is possible to define the maximum number
|
||||||
of CPU to display. The top 'max_cpu_display' will be display and an
|
of CPU to display. The top 'max_cpu_display' will be display and an
|
||||||
extra line with the mean of all others CPU will be added.
|
extra line with the mean of all others CPU will be added.
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ Example:
|
|||||||
|
|
||||||
**NOTE:** Setting low values for `public_refresh_interval` will result in frequent
|
**NOTE:** Setting low values for `public_refresh_interval` will result in frequent
|
||||||
HTTP requests to the onlive service defined in public_api. Recommended range: 120-600 seconds.
|
HTTP requests to the onlive service defined in public_api. Recommended range: 120-600 seconds.
|
||||||
Glances uses online services in order to get the IP addresses and the additional informations.
|
Glances uses online services in order to get the IP addresses and the additional information.
|
||||||
Your IP address could be blocked if too many requests are done.
|
Your IP address could be blocked if too many requests are done.
|
||||||
|
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ Trend Status
|
|||||||
======== ==============================================================
|
======== ==============================================================
|
||||||
``-`` Mean 15 lasts values equal mean 15 previous values
|
``-`` Mean 15 lasts values equal mean 15 previous values
|
||||||
``↓`` Mean 15 lasts values is lower mean 15 previous values
|
``↓`` Mean 15 lasts values is lower mean 15 previous values
|
||||||
``↑`` Mean 15 lasts values is higher mean 15 previous valuess
|
``↑`` Mean 15 lasts values is higher mean 15 previous values
|
||||||
======== ==============================================================
|
======== ==============================================================
|
||||||
|
|
||||||
Legend:
|
Legend:
|
||||||
|
@ -49,7 +49,7 @@ Trend Status
|
|||||||
======== ==============================================================
|
======== ==============================================================
|
||||||
``-`` Mean 15 lasts values equal mean 15 previous values
|
``-`` Mean 15 lasts values equal mean 15 previous values
|
||||||
``↓`` Mean 15 lasts values is lower mean 15 previous values
|
``↓`` Mean 15 lasts values is lower mean 15 previous values
|
||||||
``↑`` Mean 15 lasts values is higher mean 15 previous valuess
|
``↑`` Mean 15 lasts values is higher mean 15 previous values
|
||||||
======== ==============================================================
|
======== ==============================================================
|
||||||
|
|
||||||
Alerts are only set for used memory and used swap.
|
Alerts are only set for used memory and used swap.
|
||||||
|
526
docs/api.rst
526
docs/api.rst
@ -141,7 +141,7 @@ Get plugin stats::
|
|||||||
"refresh": 3.0,
|
"refresh": 3.0,
|
||||||
"regex": True,
|
"regex": True,
|
||||||
"result": None,
|
"result": None,
|
||||||
"timer": 0.44504690170288086},
|
"timer": 0.2482151985168457},
|
||||||
{"count": 0,
|
{"count": 0,
|
||||||
"countmax": 20.0,
|
"countmax": 20.0,
|
||||||
"countmin": None,
|
"countmin": None,
|
||||||
@ -150,7 +150,7 @@ Get plugin stats::
|
|||||||
"refresh": 3.0,
|
"refresh": 3.0,
|
||||||
"regex": True,
|
"regex": True,
|
||||||
"result": None,
|
"result": None,
|
||||||
"timer": 0.4449424743652344}]
|
"timer": 0.24815130233764648}]
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -178,7 +178,7 @@ Get a specific item when field matches the given value::
|
|||||||
"refresh": 3.0,
|
"refresh": 3.0,
|
||||||
"regex": True,
|
"regex": True,
|
||||||
"result": None,
|
"result": None,
|
||||||
"timer": 0.44504690170288086}]}
|
"timer": 0.2482151985168457}]}
|
||||||
|
|
||||||
GET cloud
|
GET cloud
|
||||||
---------
|
---------
|
||||||
@ -265,19 +265,19 @@ Get plugin stats::
|
|||||||
|
|
||||||
# curl http://localhost:61208/api/4/cpu
|
# curl http://localhost:61208/api/4/cpu
|
||||||
{"cpucore": 16,
|
{"cpucore": 16,
|
||||||
"ctx_switches": 427467586,
|
"ctx_switches": 493080568,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"idle": 93.0,
|
"idle": 86.5,
|
||||||
"interrupts": 359749831,
|
"interrupts": 420997918,
|
||||||
"iowait": 0.1,
|
"iowait": 0.5,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"nice": 0.0,
|
"nice": 0.0,
|
||||||
"soft_interrupts": 133597275,
|
"soft_interrupts": 155707720,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"syscalls": 0,
|
"syscalls": 0,
|
||||||
"system": 2.7,
|
"system": 3.5,
|
||||||
"total": 6.6,
|
"total": 12.9,
|
||||||
"user": 4.3}
|
"user": 9.4}
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -310,7 +310,7 @@ Fields descriptions:
|
|||||||
Get a specific field::
|
Get a specific field::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/cpu/total
|
# curl http://localhost:61208/api/4/cpu/total
|
||||||
{"total": 6.6}
|
{"total": 12.9}
|
||||||
|
|
||||||
GET diskio
|
GET diskio
|
||||||
----------
|
----------
|
||||||
@ -320,10 +320,10 @@ Get plugin stats::
|
|||||||
# curl http://localhost:61208/api/4/diskio
|
# curl http://localhost:61208/api/4/diskio
|
||||||
[{"disk_name": "nvme0n1",
|
[{"disk_name": "nvme0n1",
|
||||||
"key": "disk_name",
|
"key": "disk_name",
|
||||||
"read_bytes": 7492967936,
|
"read_bytes": 10167291392,
|
||||||
"read_count": 277065,
|
"read_count": 391026,
|
||||||
"write_bytes": 24887440384,
|
"write_bytes": 31230641152,
|
||||||
"write_count": 1206489},
|
"write_count": 1527146},
|
||||||
{"disk_name": "nvme0n1p1",
|
{"disk_name": "nvme0n1p1",
|
||||||
"key": "disk_name",
|
"key": "disk_name",
|
||||||
"read_bytes": 7558144,
|
"read_bytes": 7558144,
|
||||||
@ -363,10 +363,10 @@ Get a specific item when field matches the given value::
|
|||||||
# curl http://localhost:61208/api/4/diskio/disk_name/nvme0n1
|
# curl http://localhost:61208/api/4/diskio/disk_name/nvme0n1
|
||||||
{"nvme0n1": [{"disk_name": "nvme0n1",
|
{"nvme0n1": [{"disk_name": "nvme0n1",
|
||||||
"key": "disk_name",
|
"key": "disk_name",
|
||||||
"read_bytes": 7492967936,
|
"read_bytes": 10167291392,
|
||||||
"read_count": 277065,
|
"read_count": 391026,
|
||||||
"write_bytes": 24887440384,
|
"write_bytes": 31230641152,
|
||||||
"write_count": 1206489}]}
|
"write_count": 1527146}]}
|
||||||
|
|
||||||
GET folders
|
GET folders
|
||||||
-----------
|
-----------
|
||||||
@ -393,13 +393,13 @@ Get plugin stats::
|
|||||||
|
|
||||||
# curl http://localhost:61208/api/4/fs
|
# curl http://localhost:61208/api/4/fs
|
||||||
[{"device_name": "/dev/mapper/ubuntu--vg-ubuntu--lv",
|
[{"device_name": "/dev/mapper/ubuntu--vg-ubuntu--lv",
|
||||||
"free": 896615452672,
|
"free": 897378041856,
|
||||||
"fs_type": "ext4",
|
"fs_type": "ext4",
|
||||||
"key": "mnt_point",
|
"key": "mnt_point",
|
||||||
"mnt_point": "/",
|
"mnt_point": "/",
|
||||||
"percent": 5.9,
|
"percent": 5.8,
|
||||||
"size": 1003736440832,
|
"size": 1003736440832,
|
||||||
"used": 56058482688}]
|
"used": 55295893504}]
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -420,13 +420,13 @@ Get a specific item when field matches the given value::
|
|||||||
|
|
||||||
# curl http://localhost:61208/api/4/fs/mnt_point//
|
# curl http://localhost:61208/api/4/fs/mnt_point//
|
||||||
{"/": [{"device_name": "/dev/mapper/ubuntu--vg-ubuntu--lv",
|
{"/": [{"device_name": "/dev/mapper/ubuntu--vg-ubuntu--lv",
|
||||||
"free": 896615452672,
|
"free": 897378041856,
|
||||||
"fs_type": "ext4",
|
"fs_type": "ext4",
|
||||||
"key": "mnt_point",
|
"key": "mnt_point",
|
||||||
"mnt_point": "/",
|
"mnt_point": "/",
|
||||||
"percent": 5.9,
|
"percent": 5.8,
|
||||||
"size": 1003736440832,
|
"size": 1003736440832,
|
||||||
"used": 56058482688}]}
|
"used": 55295893504}]}
|
||||||
|
|
||||||
GET gpu
|
GET gpu
|
||||||
-------
|
-------
|
||||||
@ -500,9 +500,9 @@ Get plugin stats::
|
|||||||
|
|
||||||
# curl http://localhost:61208/api/4/load
|
# curl http://localhost:61208/api/4/load
|
||||||
{"cpucore": 16,
|
{"cpucore": 16,
|
||||||
"min1": 0.728515625,
|
"min1": 0.40185546875,
|
||||||
"min15": 0.88916015625,
|
"min15": 0.587890625,
|
||||||
"min5": 0.81982421875}
|
"min5": 0.638671875}
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -514,7 +514,7 @@ Fields descriptions:
|
|||||||
Get a specific field::
|
Get a specific field::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/load/min1
|
# curl http://localhost:61208/api/4/load/min1
|
||||||
{"min1": 0.728515625}
|
{"min1": 0.40185546875}
|
||||||
|
|
||||||
GET mem
|
GET mem
|
||||||
-------
|
-------
|
||||||
@ -522,16 +522,16 @@ GET mem
|
|||||||
Get plugin stats::
|
Get plugin stats::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/mem
|
# curl http://localhost:61208/api/4/mem
|
||||||
{"active": 8275505152,
|
{"active": 5094199296,
|
||||||
"available": 4275773440,
|
"available": 10908983296,
|
||||||
"buffers": 116162560,
|
"buffers": 180162560,
|
||||||
"cached": 4656115712,
|
"cached": 5800796160,
|
||||||
"free": 4275773440,
|
"free": 10908983296,
|
||||||
"inactive": 5691351040,
|
"inactive": 3735175168,
|
||||||
"percent": 74.0,
|
"percent": 33.6,
|
||||||
"shared": 789377024,
|
"shared": 622718976,
|
||||||
"total": 16422486016,
|
"total": 16422486016,
|
||||||
"used": 12146712576}
|
"used": 5513502720}
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -558,13 +558,13 @@ GET memswap
|
|||||||
Get plugin stats::
|
Get plugin stats::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/memswap
|
# curl http://localhost:61208/api/4/memswap
|
||||||
{"free": 3367235584,
|
{"free": 3836997632,
|
||||||
"percent": 21.6,
|
"percent": 10.7,
|
||||||
"sin": 12087296,
|
"sin": 186925056,
|
||||||
"sout": 929779712,
|
"sout": 1518604288,
|
||||||
"time_since_update": 1,
|
"time_since_update": 1,
|
||||||
"total": 4294963200,
|
"total": 4294963200,
|
||||||
"used": 927727616}
|
"used": 457965568}
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -589,15 +589,15 @@ Get plugin stats::
|
|||||||
# curl http://localhost:61208/api/4/network
|
# curl http://localhost:61208/api/4/network
|
||||||
[{"alias": None,
|
[{"alias": None,
|
||||||
"bytes_all": 0,
|
"bytes_all": 0,
|
||||||
"bytes_all_gauge": 5602788085,
|
"bytes_all_gauge": 6286191015,
|
||||||
"bytes_recv": 0,
|
"bytes_recv": 0,
|
||||||
"bytes_recv_gauge": 5324413260,
|
"bytes_recv_gauge": 5977645732,
|
||||||
"bytes_sent": 0,
|
"bytes_sent": 0,
|
||||||
"bytes_sent_gauge": 278374825,
|
"bytes_sent_gauge": 308545283,
|
||||||
"interface_name": "wlp0s20f3",
|
"interface_name": "wlp0s20f3",
|
||||||
"key": "interface_name",
|
"key": "interface_name",
|
||||||
"speed": 0,
|
"speed": 0,
|
||||||
"time_since_update": 0.4488046169281006}]
|
"time_since_update": 0.2501566410064697}]
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -626,15 +626,15 @@ Get a specific item when field matches the given value::
|
|||||||
# curl http://localhost:61208/api/4/network/interface_name/wlp0s20f3
|
# curl http://localhost:61208/api/4/network/interface_name/wlp0s20f3
|
||||||
{"wlp0s20f3": [{"alias": None,
|
{"wlp0s20f3": [{"alias": None,
|
||||||
"bytes_all": 0,
|
"bytes_all": 0,
|
||||||
"bytes_all_gauge": 5602788085,
|
"bytes_all_gauge": 6286191015,
|
||||||
"bytes_recv": 0,
|
"bytes_recv": 0,
|
||||||
"bytes_recv_gauge": 5324413260,
|
"bytes_recv_gauge": 5977645732,
|
||||||
"bytes_sent": 0,
|
"bytes_sent": 0,
|
||||||
"bytes_sent_gauge": 278374825,
|
"bytes_sent_gauge": 308545283,
|
||||||
"interface_name": "wlp0s20f3",
|
"interface_name": "wlp0s20f3",
|
||||||
"key": "interface_name",
|
"key": "interface_name",
|
||||||
"speed": 0,
|
"speed": 0,
|
||||||
"time_since_update": 0.4488046169281006}]}
|
"time_since_update": 0.2501566410064697}]}
|
||||||
|
|
||||||
GET now
|
GET now
|
||||||
-------
|
-------
|
||||||
@ -642,7 +642,7 @@ GET now
|
|||||||
Get plugin stats::
|
Get plugin stats::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/now
|
# curl http://localhost:61208/api/4/now
|
||||||
{"custom": "2024-06-29 09:55:18 CEST", "iso": "2024-06-29T09:55:18+02:00"}
|
{"custom": "2024-06-29 19:17:41 CEST", "iso": "2024-06-29T19:17:41+02:00"}
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -652,7 +652,7 @@ Fields descriptions:
|
|||||||
Get a specific field::
|
Get a specific field::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/now/iso
|
# curl http://localhost:61208/api/4/now/iso
|
||||||
{"iso": "2024-06-29T09:55:18+02:00"}
|
{"iso": "2024-06-29T19:17:41+02:00"}
|
||||||
|
|
||||||
GET percpu
|
GET percpu
|
||||||
----------
|
----------
|
||||||
@ -663,7 +663,7 @@ Get plugin stats::
|
|||||||
[{"cpu_number": 0,
|
[{"cpu_number": 0,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 36.0,
|
"idle": 21.0,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -671,12 +671,12 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 0.0,
|
"system": 0.0,
|
||||||
"total": 64.0,
|
"total": 79.0,
|
||||||
"user": 1.0},
|
"user": 1.0},
|
||||||
{"cpu_number": 1,
|
{"cpu_number": 1,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 37.0,
|
"idle": 23.0,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -684,7 +684,7 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 0.0,
|
"system": 0.0,
|
||||||
"total": 63.0,
|
"total": 77.0,
|
||||||
"user": 0.0}]
|
"user": 0.0}]
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
@ -719,7 +719,7 @@ Get plugin stats::
|
|||||||
"port": 0,
|
"port": 0,
|
||||||
"refresh": 30,
|
"refresh": 30,
|
||||||
"rtt_warning": None,
|
"rtt_warning": None,
|
||||||
"status": 0.005775,
|
"status": 0.006275,
|
||||||
"timeout": 3}]
|
"timeout": 3}]
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
@ -747,7 +747,7 @@ Get a specific item when field matches the given value::
|
|||||||
"port": 0,
|
"port": 0,
|
||||||
"refresh": 30,
|
"refresh": 30,
|
||||||
"rtt_warning": None,
|
"rtt_warning": None,
|
||||||
"status": 0.005775,
|
"status": 0.006275,
|
||||||
"timeout": 3}]}
|
"timeout": 3}]}
|
||||||
|
|
||||||
GET processcount
|
GET processcount
|
||||||
@ -756,7 +756,7 @@ GET processcount
|
|||||||
Get plugin stats::
|
Get plugin stats::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/processcount
|
# curl http://localhost:61208/api/4/processcount
|
||||||
{"pid_max": 0, "running": 1, "sleeping": 281, "thread": 1660, "total": 426}
|
{"pid_max": 0, "running": 2, "sleeping": 277, "thread": 1508, "total": 412}
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -769,7 +769,7 @@ Fields descriptions:
|
|||||||
Get a specific field::
|
Get a specific field::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/processcount/total
|
# curl http://localhost:61208/api/4/processcount/total
|
||||||
{"total": 426}
|
{"total": 412}
|
||||||
|
|
||||||
GET processlist
|
GET processlist
|
||||||
---------------
|
---------------
|
||||||
@ -777,62 +777,40 @@ GET processlist
|
|||||||
Get plugin stats::
|
Get plugin stats::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/processlist
|
# curl http://localhost:61208/api/4/processlist
|
||||||
[{"cmdline": ["/snap/firefox/4336/usr/lib/firefox/firefox",
|
[{"cmdline": ["/snap/firefox/4336/usr/lib/firefox/firefox"],
|
||||||
"-contentproc",
|
|
||||||
"-childID",
|
|
||||||
"2",
|
|
||||||
"-isForBrowser",
|
|
||||||
"-prefsLen",
|
|
||||||
"28296",
|
|
||||||
"-prefMapSize",
|
|
||||||
"244444",
|
|
||||||
"-jsInitLen",
|
|
||||||
"231800",
|
|
||||||
"-parentBuildID",
|
|
||||||
"20240527194810",
|
|
||||||
"-greomni",
|
|
||||||
"/snap/firefox/4336/usr/lib/firefox/omni.ja",
|
|
||||||
"-appomni",
|
|
||||||
"/snap/firefox/4336/usr/lib/firefox/browser/omni.ja",
|
|
||||||
"-appDir",
|
|
||||||
"/snap/firefox/4336/usr/lib/firefox/browser",
|
|
||||||
"{01aadc3d-85fc-4851-9ca1-a43a1e81c3fa}",
|
|
||||||
"4591",
|
|
||||||
"true",
|
|
||||||
"tab"],
|
|
||||||
"cpu_percent": 0.0,
|
"cpu_percent": 0.0,
|
||||||
"cpu_times": {"children_system": 0.0,
|
"cpu_times": {"children_system": 3.08,
|
||||||
"children_user": 0.0,
|
"children_user": 3.33,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"system": 123.83,
|
"system": 13.75,
|
||||||
"user": 2750.68},
|
"user": 34.7},
|
||||||
"gids": {"effective": 1000, "real": 1000, "saved": 1000},
|
"gids": {"effective": 1000, "real": 1000, "saved": 1000},
|
||||||
"io_counters": [8411136, 0, 0, 0, 0],
|
"io_counters": [393136128, 195969024, 0, 0, 0],
|
||||||
"key": "pid",
|
"key": "pid",
|
||||||
"memory_info": {"data": 3653316608,
|
"memory_info": {"data": 681967616,
|
||||||
"dirty": 0,
|
"dirty": 0,
|
||||||
"lib": 0,
|
"lib": 0,
|
||||||
"rss": 3612418048,
|
"rss": 443969536,
|
||||||
"shared": 128864256,
|
"shared": 222199808,
|
||||||
"text": 987136,
|
"text": 987136,
|
||||||
"vms": 6200733696},
|
"vms": 3721211904},
|
||||||
"memory_percent": 21.996779564802278,
|
"memory_percent": 2.7034246554842674,
|
||||||
"name": "Isolated Web Co",
|
"name": "firefox",
|
||||||
"nice": 0,
|
"nice": 0,
|
||||||
"num_threads": 28,
|
"num_threads": 120,
|
||||||
"pid": 4848,
|
"pid": 793506,
|
||||||
"status": "S",
|
"status": "S",
|
||||||
"time_since_update": 1,
|
"time_since_update": 1,
|
||||||
"username": "nicolargo"},
|
"username": "nicolargo"},
|
||||||
{"cmdline": ["/snap/firefox/4336/usr/lib/firefox/firefox",
|
{"cmdline": ["/snap/firefox/4336/usr/lib/firefox/firefox",
|
||||||
"-contentproc",
|
"-contentproc",
|
||||||
"-childID",
|
"-childID",
|
||||||
"3",
|
"2",
|
||||||
"-isForBrowser",
|
"-isForBrowser",
|
||||||
"-prefsLen",
|
"-prefsLen",
|
||||||
"28296",
|
"28218",
|
||||||
"-prefMapSize",
|
"-prefMapSize",
|
||||||
"244444",
|
"244440",
|
||||||
"-jsInitLen",
|
"-jsInitLen",
|
||||||
"231800",
|
"231800",
|
||||||
"-parentBuildID",
|
"-parentBuildID",
|
||||||
@ -843,31 +821,31 @@ Get plugin stats::
|
|||||||
"/snap/firefox/4336/usr/lib/firefox/browser/omni.ja",
|
"/snap/firefox/4336/usr/lib/firefox/browser/omni.ja",
|
||||||
"-appDir",
|
"-appDir",
|
||||||
"/snap/firefox/4336/usr/lib/firefox/browser",
|
"/snap/firefox/4336/usr/lib/firefox/browser",
|
||||||
"{0ae685c6-7105-4724-886c-98d4a4a9a4f8}",
|
"{bc853380-6b8f-46ad-afe0-9da5ba832e62}",
|
||||||
"4591",
|
"793506",
|
||||||
"true",
|
"true",
|
||||||
"tab"],
|
"tab"],
|
||||||
"cpu_percent": 0.0,
|
"cpu_percent": 0.0,
|
||||||
"cpu_times": {"children_system": 0.0,
|
"cpu_times": {"children_system": 0.0,
|
||||||
"children_user": 0.0,
|
"children_user": 0.0,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"system": 52.38,
|
"system": 2.54,
|
||||||
"user": 492.92},
|
"user": 19.25},
|
||||||
"gids": {"effective": 1000, "real": 1000, "saved": 1000},
|
"gids": {"effective": 1000, "real": 1000, "saved": 1000},
|
||||||
"io_counters": [2974720, 0, 0, 0, 0],
|
"io_counters": [1827840, 0, 0, 0, 0],
|
||||||
"key": "pid",
|
"key": "pid",
|
||||||
"memory_info": {"data": 1961992192,
|
"memory_info": {"data": 412688384,
|
||||||
"dirty": 0,
|
"dirty": 0,
|
||||||
"lib": 0,
|
"lib": 0,
|
||||||
"rss": 1941671936,
|
"rss": 440922112,
|
||||||
"shared": 121491456,
|
"shared": 111878144,
|
||||||
"text": 987136,
|
"text": 987136,
|
||||||
"vms": 4457148416},
|
"vms": 2946224128},
|
||||||
"memory_percent": 11.823252180627705,
|
"memory_percent": 2.684868244493684,
|
||||||
"name": "Isolated Web Co",
|
"name": "Isolated Web Co",
|
||||||
"nice": 0,
|
"nice": 0,
|
||||||
"num_threads": 28,
|
"num_threads": 28,
|
||||||
"pid": 4852,
|
"pid": 793778,
|
||||||
"status": "S",
|
"status": "S",
|
||||||
"time_since_update": 1,
|
"time_since_update": 1,
|
||||||
"username": "nicolargo"}]
|
"username": "nicolargo"}]
|
||||||
@ -902,18 +880,18 @@ GET quicklook
|
|||||||
Get plugin stats::
|
Get plugin stats::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/quicklook
|
# curl http://localhost:61208/api/4/quicklook
|
||||||
{"cpu": 6.6,
|
{"cpu": 12.9,
|
||||||
"cpu_hz": 4475000000.0,
|
"cpu_hz": 4475000000.0,
|
||||||
"cpu_hz_current": 570218562.5,
|
"cpu_hz_current": 1666410624.9999998,
|
||||||
"cpu_log_core": 16,
|
"cpu_log_core": 16,
|
||||||
"cpu_name": "13th Gen Intel(R) Core(TM) i7-13620H",
|
"cpu_name": "13th Gen Intel(R) Core(TM) i7-13620H",
|
||||||
"cpu_phys_core": 10,
|
"cpu_phys_core": 10,
|
||||||
"load": 5.6,
|
"load": 3.7,
|
||||||
"mem": 74.0,
|
"mem": 33.6,
|
||||||
"percpu": [{"cpu_number": 0,
|
"percpu": [{"cpu_number": 0,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 36.0,
|
"idle": 21.0,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -921,12 +899,12 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 0.0,
|
"system": 0.0,
|
||||||
"total": 64.0,
|
"total": 79.0,
|
||||||
"user": 1.0},
|
"user": 1.0},
|
||||||
{"cpu_number": 1,
|
{"cpu_number": 1,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 37.0,
|
"idle": 23.0,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -934,64 +912,12 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 0.0,
|
"system": 0.0,
|
||||||
"total": 63.0,
|
"total": 77.0,
|
||||||
"user": 0.0},
|
"user": 0.0},
|
||||||
{"cpu_number": 2,
|
{"cpu_number": 2,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 37.0,
|
"idle": 18.0,
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 0.0,
|
|
||||||
"total": 63.0,
|
|
||||||
"user": 0.0},
|
|
||||||
{"cpu_number": 3,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 35.0,
|
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 0.0,
|
|
||||||
"total": 65.0,
|
|
||||||
"user": 2.0},
|
|
||||||
{"cpu_number": 4,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 21.0,
|
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 2.0,
|
|
||||||
"total": 79.0,
|
|
||||||
"user": 15.0},
|
|
||||||
{"cpu_number": 5,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 37.0,
|
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 0.0,
|
|
||||||
"total": 63.0,
|
|
||||||
"user": 1.0},
|
|
||||||
{"cpu_number": 6,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 21.0,
|
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -999,77 +925,64 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 1.0,
|
"system": 1.0,
|
||||||
"total": 79.0,
|
"total": 82.0,
|
||||||
|
"user": 5.0},
|
||||||
|
{"cpu_number": 3,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 22.0,
|
||||||
|
"iowait": 0.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 0.0,
|
||||||
|
"total": 78.0,
|
||||||
|
"user": 0.0},
|
||||||
|
{"cpu_number": 4,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 8.0,
|
||||||
|
"iowait": 0.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 1.0,
|
||||||
|
"total": 92.0,
|
||||||
|
"user": 14.0},
|
||||||
|
{"cpu_number": 5,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 23.0,
|
||||||
|
"iowait": 0.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 0.0,
|
||||||
|
"total": 77.0,
|
||||||
|
"user": 0.0},
|
||||||
|
{"cpu_number": 6,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 3.0,
|
||||||
|
"iowait": 1.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 4.0,
|
||||||
|
"total": 97.0,
|
||||||
"user": 15.0},
|
"user": 15.0},
|
||||||
{"cpu_number": 7,
|
{"cpu_number": 7,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 38.0,
|
"idle": 23.0,
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 0.0,
|
|
||||||
"total": 62.0,
|
|
||||||
"user": 0.0},
|
|
||||||
{"cpu_number": 8,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 37.0,
|
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 0.0,
|
|
||||||
"total": 63.0,
|
|
||||||
"user": 0.0},
|
|
||||||
{"cpu_number": 9,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 38.0,
|
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 0.0,
|
|
||||||
"total": 62.0,
|
|
||||||
"user": 0.0},
|
|
||||||
{"cpu_number": 10,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 37.0,
|
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 0.0,
|
|
||||||
"total": 63.0,
|
|
||||||
"user": 0.0},
|
|
||||||
{"cpu_number": 11,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 37.0,
|
|
||||||
"iowait": 0.0,
|
|
||||||
"irq": 0.0,
|
|
||||||
"key": "cpu_number",
|
|
||||||
"nice": 0.0,
|
|
||||||
"softirq": 0.0,
|
|
||||||
"steal": 0.0,
|
|
||||||
"system": 0.0,
|
|
||||||
"total": 63.0,
|
|
||||||
"user": 0.0},
|
|
||||||
{"cpu_number": 12,
|
|
||||||
"guest": 0.0,
|
|
||||||
"guest_nice": 0.0,
|
|
||||||
"idle": 36.0,
|
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -1077,12 +990,77 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 1.0,
|
"system": 1.0,
|
||||||
"total": 64.0,
|
"total": 77.0,
|
||||||
|
"user": 0.0},
|
||||||
|
{"cpu_number": 8,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 19.0,
|
||||||
|
"iowait": 0.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 1.0,
|
||||||
|
"total": 81.0,
|
||||||
|
"user": 3.0},
|
||||||
|
{"cpu_number": 9,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 22.0,
|
||||||
|
"iowait": 1.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 0.0,
|
||||||
|
"total": 78.0,
|
||||||
|
"user": 0.0},
|
||||||
|
{"cpu_number": 10,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 22.0,
|
||||||
|
"iowait": 0.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 0.0,
|
||||||
|
"total": 78.0,
|
||||||
|
"user": 0.0},
|
||||||
|
{"cpu_number": 11,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 23.0,
|
||||||
|
"iowait": 0.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 0.0,
|
||||||
|
"total": 77.0,
|
||||||
|
"user": 0.0},
|
||||||
|
{"cpu_number": 12,
|
||||||
|
"guest": 0.0,
|
||||||
|
"guest_nice": 0.0,
|
||||||
|
"idle": 21.0,
|
||||||
|
"iowait": 0.0,
|
||||||
|
"irq": 0.0,
|
||||||
|
"key": "cpu_number",
|
||||||
|
"nice": 0.0,
|
||||||
|
"softirq": 0.0,
|
||||||
|
"steal": 0.0,
|
||||||
|
"system": 1.0,
|
||||||
|
"total": 79.0,
|
||||||
"user": 1.0},
|
"user": 1.0},
|
||||||
{"cpu_number": 13,
|
{"cpu_number": 13,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 37.0,
|
"idle": 23.0,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -1090,12 +1068,12 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 0.0,
|
"system": 0.0,
|
||||||
"total": 63.0,
|
"total": 77.0,
|
||||||
"user": 0.0},
|
"user": 0.0},
|
||||||
{"cpu_number": 14,
|
{"cpu_number": 14,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 37.0,
|
"idle": 22.0,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -1103,12 +1081,12 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 0.0,
|
"system": 0.0,
|
||||||
"total": 63.0,
|
"total": 78.0,
|
||||||
"user": 0.0},
|
"user": 0.0},
|
||||||
{"cpu_number": 15,
|
{"cpu_number": 15,
|
||||||
"guest": 0.0,
|
"guest": 0.0,
|
||||||
"guest_nice": 0.0,
|
"guest_nice": 0.0,
|
||||||
"idle": 37.0,
|
"idle": 22.0,
|
||||||
"iowait": 0.0,
|
"iowait": 0.0,
|
||||||
"irq": 0.0,
|
"irq": 0.0,
|
||||||
"key": "cpu_number",
|
"key": "cpu_number",
|
||||||
@ -1116,9 +1094,9 @@ Get plugin stats::
|
|||||||
"softirq": 0.0,
|
"softirq": 0.0,
|
||||||
"steal": 0.0,
|
"steal": 0.0,
|
||||||
"system": 0.0,
|
"system": 0.0,
|
||||||
"total": 63.0,
|
"total": 78.0,
|
||||||
"user": 0.0}],
|
"user": 0.0}],
|
||||||
"swap": 21.6}
|
"swap": 10.7}
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
|
|
||||||
@ -1156,14 +1134,14 @@ Get plugin stats::
|
|||||||
"label": "Ambient",
|
"label": "Ambient",
|
||||||
"type": "temperature_core",
|
"type": "temperature_core",
|
||||||
"unit": "C",
|
"unit": "C",
|
||||||
"value": 36,
|
"value": 39,
|
||||||
"warning": 0},
|
"warning": 0},
|
||||||
{"critical": None,
|
{"critical": None,
|
||||||
"key": "label",
|
"key": "label",
|
||||||
"label": "Ambient 3",
|
"label": "Ambient 3",
|
||||||
"type": "temperature_core",
|
"type": "temperature_core",
|
||||||
"unit": "C",
|
"unit": "C",
|
||||||
"value": 31,
|
"value": 32,
|
||||||
"warning": 0}]
|
"warning": 0}]
|
||||||
|
|
||||||
Fields descriptions:
|
Fields descriptions:
|
||||||
@ -1224,7 +1202,7 @@ Get a specific item when field matches the given value::
|
|||||||
"label": "Ambient",
|
"label": "Ambient",
|
||||||
"type": "temperature_core",
|
"type": "temperature_core",
|
||||||
"unit": "C",
|
"unit": "C",
|
||||||
"value": 36,
|
"value": 39,
|
||||||
"warning": 0}]}
|
"warning": 0}]}
|
||||||
|
|
||||||
GET smart
|
GET smart
|
||||||
@ -1255,7 +1233,7 @@ Fields descriptions:
|
|||||||
* **platform**: Platform (32 or 64 bits) (unit is *None*)
|
* **platform**: Platform (32 or 64 bits) (unit is *None*)
|
||||||
* **linux_distro**: Linux distribution (unit is *None*)
|
* **linux_distro**: Linux distribution (unit is *None*)
|
||||||
* **os_version**: Operating system version (unit is *None*)
|
* **os_version**: Operating system version (unit is *None*)
|
||||||
* **hr_name**: Human readable operating sytem name (unit is *None*)
|
* **hr_name**: Human readable operating system name (unit is *None*)
|
||||||
|
|
||||||
Get a specific field::
|
Get a specific field::
|
||||||
|
|
||||||
@ -1268,7 +1246,7 @@ GET uptime
|
|||||||
Get plugin stats::
|
Get plugin stats::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/uptime
|
# curl http://localhost:61208/api/4/uptime
|
||||||
"19 days, 16:58:04"
|
"20 days, 2:20:27"
|
||||||
|
|
||||||
GET version
|
GET version
|
||||||
-----------
|
-----------
|
||||||
@ -1276,7 +1254,7 @@ GET version
|
|||||||
Get plugin stats::
|
Get plugin stats::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/version
|
# curl http://localhost:61208/api/4/version
|
||||||
"4.1.0"
|
"4.2.0_beta01"
|
||||||
|
|
||||||
GET wifi
|
GET wifi
|
||||||
--------
|
--------
|
||||||
@ -1285,8 +1263,8 @@ Get plugin stats::
|
|||||||
|
|
||||||
# curl http://localhost:61208/api/4/wifi
|
# curl http://localhost:61208/api/4/wifi
|
||||||
[{"key": "ssid",
|
[{"key": "ssid",
|
||||||
"quality_level": -58.0,
|
"quality_level": -59.0,
|
||||||
"quality_link": 52.0,
|
"quality_link": 51.0,
|
||||||
"ssid": "wlp0s20f3"}]
|
"ssid": "wlp0s20f3"}]
|
||||||
|
|
||||||
Get a specific field::
|
Get a specific field::
|
||||||
@ -1298,8 +1276,8 @@ Get a specific item when field matches the given value::
|
|||||||
|
|
||||||
# curl http://localhost:61208/api/4/wifi/ssid/wlp0s20f3
|
# curl http://localhost:61208/api/4/wifi/ssid/wlp0s20f3
|
||||||
{"wlp0s20f3": [{"key": "ssid",
|
{"wlp0s20f3": [{"key": "ssid",
|
||||||
"quality_level": -58.0,
|
"quality_level": -59.0,
|
||||||
"quality_link": 52.0,
|
"quality_link": 51.0,
|
||||||
"ssid": "wlp0s20f3"}]}
|
"ssid": "wlp0s20f3"}]}
|
||||||
|
|
||||||
GET all stats
|
GET all stats
|
||||||
@ -1344,34 +1322,34 @@ GET stats history
|
|||||||
History of a plugin::
|
History of a plugin::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/cpu/history
|
# curl http://localhost:61208/api/4/cpu/history
|
||||||
{"system": [["2024-06-29T09:55:19.540650", 2.7],
|
{"system": [["2024-06-29T19:17:42.396270", 3.5],
|
||||||
["2024-06-29T09:55:20.619021", 0.5],
|
["2024-06-29T19:17:43.447397", 0.7],
|
||||||
["2024-06-29T09:55:21.631678", 0.5]],
|
["2024-06-29T19:17:44.455830", 0.7]],
|
||||||
"user": [["2024-06-29T09:55:19.540644", 4.3],
|
"user": [["2024-06-29T19:17:42.396268", 9.4],
|
||||||
["2024-06-29T09:55:20.619018", 0.4],
|
["2024-06-29T19:17:43.447396", 4.0],
|
||||||
["2024-06-29T09:55:21.631673", 0.4]]}
|
["2024-06-29T19:17:44.455825", 4.0]]}
|
||||||
|
|
||||||
Limit history to last 2 values::
|
Limit history to last 2 values::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/cpu/history/2
|
# curl http://localhost:61208/api/4/cpu/history/2
|
||||||
{"system": [["2024-06-29T09:55:20.619021", 0.5],
|
{"system": [["2024-06-29T19:17:43.447397", 0.7],
|
||||||
["2024-06-29T09:55:21.631678", 0.5]],
|
["2024-06-29T19:17:44.455830", 0.7]],
|
||||||
"user": [["2024-06-29T09:55:20.619018", 0.4],
|
"user": [["2024-06-29T19:17:43.447396", 4.0],
|
||||||
["2024-06-29T09:55:21.631673", 0.4]]}
|
["2024-06-29T19:17:44.455825", 4.0]]}
|
||||||
|
|
||||||
History for a specific field::
|
History for a specific field::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/cpu/system/history
|
# curl http://localhost:61208/api/4/cpu/system/history
|
||||||
{"system": [["2024-06-29T09:55:18.389360", 2.7],
|
{"system": [["2024-06-29T19:17:41.318736", 3.5],
|
||||||
["2024-06-29T09:55:19.540650", 2.7],
|
["2024-06-29T19:17:42.396270", 3.5],
|
||||||
["2024-06-29T09:55:20.619021", 0.5],
|
["2024-06-29T19:17:43.447397", 0.7],
|
||||||
["2024-06-29T09:55:21.631678", 0.5]]}
|
["2024-06-29T19:17:44.455830", 0.7]]}
|
||||||
|
|
||||||
Limit history for a specific field to last 2 values::
|
Limit history for a specific field to last 2 values::
|
||||||
|
|
||||||
# curl http://localhost:61208/api/4/cpu/system/history
|
# curl http://localhost:61208/api/4/cpu/system/history
|
||||||
{"system": [["2024-06-29T09:55:20.619021", 0.5],
|
{"system": [["2024-06-29T19:17:43.447397", 0.7],
|
||||||
["2024-06-29T09:55:21.631678", 0.5]]}
|
["2024-06-29T19:17:44.455830", 0.7]]}
|
||||||
|
|
||||||
GET limits (used for thresholds)
|
GET limits (used for thresholds)
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
|||||||
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
|
||||||
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
|
||||||
..
|
..
|
||||||
.TH "GLANCES" "1" "Jun 29, 2024" "4.1.0" "Glances"
|
.TH "GLANCES" "1" "Jun 29, 2024" "4.2.0_beta01" "Glances"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
glances \- An eye on your system
|
glances \- An eye on your system
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
|
@ -55,7 +55,7 @@ if psutil_version_info < psutil_min_version:
|
|||||||
|
|
||||||
|
|
||||||
def __signal_handler(signal, frame):
|
def __signal_handler(signal, frame):
|
||||||
logger.debug(f"Signal {signal} catched")
|
logger.debug(f"Signal {signal} caught")
|
||||||
end()
|
end()
|
||||||
|
|
||||||
|
|
||||||
|
@ -89,7 +89,7 @@ def printandflush(string):
|
|||||||
|
|
||||||
def to_ascii(s):
|
def to_ascii(s):
|
||||||
"""Convert the bytes string to a ASCII string
|
"""Convert the bytes string to a ASCII string
|
||||||
Usefull to remove accent (diacritics)"""
|
Useful to remove accent (diacritics)"""
|
||||||
if isinstance(s, binary_type):
|
if isinstance(s, binary_type):
|
||||||
return s.decode()
|
return s.decode()
|
||||||
return s.encode('ascii', 'ignore').decode()
|
return s.encode('ascii', 'ignore').decode()
|
||||||
@ -153,7 +153,7 @@ def subsample(data, sampling):
|
|||||||
|
|
||||||
Data should be a list of numerical itervalues
|
Data should be a list of numerical itervalues
|
||||||
|
|
||||||
Return a subsampled list of sampling lenght
|
Return a subsampled list of sampling length
|
||||||
"""
|
"""
|
||||||
if len(data) <= sampling:
|
if len(data) <= sampling:
|
||||||
return data
|
return data
|
||||||
@ -216,13 +216,13 @@ def key_exist_value_not_none(k, d):
|
|||||||
return k in d and d[k] is not None
|
return k in d and d[k] is not None
|
||||||
|
|
||||||
|
|
||||||
def key_exist_value_not_none_not_v(k, d, value='', lengh=None):
|
def key_exist_value_not_none_not_v(k, d, value='', length=None):
|
||||||
# Return True if:
|
# Return True if:
|
||||||
# - key k exists
|
# - key k exists
|
||||||
# - d[k] is not None
|
# - d[k] is not None
|
||||||
# - d[k] != value
|
# - d[k] != value
|
||||||
# - if lengh is not None and len(d[k]) >= lengh
|
# - if length is not None and len(d[k]) >= length
|
||||||
return k in d and d[k] is not None and d[k] != value and (lengh is None or len(d[k]) >= lengh)
|
return k in d and d[k] is not None and d[k] != value and (length is None or len(d[k]) >= length)
|
||||||
|
|
||||||
|
|
||||||
def disable(class_name, var):
|
def disable(class_name, var):
|
||||||
@ -425,12 +425,12 @@ def weak_lru_cache(maxsize=128, typed=False):
|
|||||||
|
|
||||||
|
|
||||||
def namedtuple_to_dict(data):
|
def namedtuple_to_dict(data):
|
||||||
"""Convert a namedtuple to a dict, using the _asdict() method embeded in PsUtil stats."""
|
"""Convert a namedtuple to a dict, using the _asdict() method embedded in PsUtil stats."""
|
||||||
return {k: (v._asdict() if hasattr(v, '_asdict') else v) for k, v in data.items()}
|
return {k: (v._asdict() if hasattr(v, '_asdict') else v) for k, v in data.items()}
|
||||||
|
|
||||||
|
|
||||||
def list_of_namedtuple_to_list_of_dict(data):
|
def list_of_namedtuple_to_list_of_dict(data):
|
||||||
"""Convert a list of namedtuples to a dict, using the _asdict() method embeded in PsUtil stats."""
|
"""Convert a list of namedtuples to a dict, using the _asdict() method embedded in PsUtil stats."""
|
||||||
return [namedtuple_to_dict(d) for d in data]
|
return [namedtuple_to_dict(d) for d in data]
|
||||||
|
|
||||||
|
|
||||||
|
@ -1211,7 +1211,7 @@ def build_colors_list(args):
|
|||||||
curses.init_pair(5, curses.COLOR_MAGENTA, -1)
|
curses.init_pair(5, curses.COLOR_MAGENTA, -1)
|
||||||
else:
|
else:
|
||||||
curses.init_pair(2, -1, curses.COLOR_RED)
|
curses.init_pair(2, -1, curses.COLOR_RED)
|
||||||
curses.init_pair(3, -1, curses.COLOR_GREEN)
|
curses.init_pair(3, 0, curses.COLOR_GREEN)
|
||||||
curses.init_pair(5, -1, curses.COLOR_MAGENTA)
|
curses.init_pair(5, -1, curses.COLOR_MAGENTA)
|
||||||
curses.init_pair(4, curses.COLOR_BLUE, -1)
|
curses.init_pair(4, curses.COLOR_BLUE, -1)
|
||||||
curses.init_pair(6, curses.COLOR_RED, -1)
|
curses.init_pair(6, curses.COLOR_RED, -1)
|
||||||
|
@ -11,7 +11,7 @@ It should implement a Class named PluginModel (inherited from GlancesPluginModel
|
|||||||
This class should be based on the MVC model.
|
This class should be based on the MVC model.
|
||||||
- model: where the stats are updated (update method)
|
- model: where the stats are updated (update method)
|
||||||
- view: where the stats are prepare to be displayed (update_views)
|
- view: where the stats are prepare to be displayed (update_views)
|
||||||
- controler: where the stats are displayed (msg_curse method)
|
- controller: where the stats are displayed (msg_curse method)
|
||||||
|
|
||||||
A plugin should define the following global variables:
|
A plugin should define the following global variables:
|
||||||
|
|
||||||
|
@ -98,7 +98,7 @@ class GlancesPluginModel:
|
|||||||
logger.debug(f'Load section {self.plugin_name} in Glances configuration file')
|
logger.debug(f'Load section {self.plugin_name} in Glances configuration file')
|
||||||
self.load_limits(config=config)
|
self.load_limits(config=config)
|
||||||
|
|
||||||
# Init the alias (dictionnary)
|
# Init the alias (dictionary)
|
||||||
self.alias = self.read_alias()
|
self.alias = self.read_alias()
|
||||||
|
|
||||||
# Init the actions
|
# Init the actions
|
||||||
|
@ -543,7 +543,7 @@ class PluginModel(GlancesPluginModel):
|
|||||||
# Process list
|
# Process list
|
||||||
# Loop over processes (sorted by the sort key previously compute)
|
# Loop over processes (sorted by the sort key previously compute)
|
||||||
# This is a Glances bottleneck (see flame graph),
|
# This is a Glances bottleneck (see flame graph),
|
||||||
# TODO: get_process_curses_data should be optimzed
|
# TODO: get_process_curses_data should be optimized
|
||||||
for position, process in enumerate(processes_list_sorted):
|
for position, process in enumerate(processes_list_sorted):
|
||||||
ret.extend(self.get_process_curses_data(process, position == args.cursor_position, args))
|
ret.extend(self.get_process_curses_data(process, position == args.cursor_position, args))
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ fields_description = {
|
|||||||
'description': 'Operating system version',
|
'description': 'Operating system version',
|
||||||
},
|
},
|
||||||
'hr_name': {
|
'hr_name': {
|
||||||
'description': 'Human readable operating sytem name',
|
'description': 'Human readable operating system name',
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
"""Wifi plugin.
|
"""Wifi plugin.
|
||||||
|
|
||||||
Stats are retreived from the /proc/net/wireless file (Linux only):
|
Stats are retrieved from the /proc/net/wireless file (Linux only):
|
||||||
|
|
||||||
# cat /proc/net/wireless
|
# cat /proc/net/wireless
|
||||||
Inter-| sta-| Quality | Discarded packets | Missed | WE
|
Inter-| sta-| Quality | Discarded packets | Missed | WE
|
||||||
|
@ -293,7 +293,7 @@ class GlancesProcesses:
|
|||||||
# - connections (TCP and UDP)
|
# - connections (TCP and UDP)
|
||||||
# - CPU min/max/mean
|
# - CPU min/max/mean
|
||||||
|
|
||||||
# Set the extended stats list (OS dependant)
|
# Set the extended stats list (OS dependent)
|
||||||
extended_stats = ['cpu_affinity', 'ionice', 'num_ctx_switches']
|
extended_stats = ['cpu_affinity', 'ionice', 'num_ctx_switches']
|
||||||
if LINUX:
|
if LINUX:
|
||||||
# num_fds only available on Unix system (see issue #1351)
|
# num_fds only available on Unix system (see issue #1351)
|
||||||
@ -418,7 +418,7 @@ class GlancesProcesses:
|
|||||||
#####################
|
#####################
|
||||||
sorted_attrs = ['cpu_percent', 'cpu_times', 'memory_percent', 'name', 'status', 'num_threads']
|
sorted_attrs = ['cpu_percent', 'cpu_times', 'memory_percent', 'name', 'status', 'num_threads']
|
||||||
displayed_attr = ['memory_info', 'nice', 'pid']
|
displayed_attr = ['memory_info', 'nice', 'pid']
|
||||||
# The following attributes are cached and only retreive every self.cache_timeout seconds
|
# The following attributes are cached and only retrieve every self.cache_timeout seconds
|
||||||
# Warning: 'name' can not be cached because it is used for filtering
|
# Warning: 'name' can not be cached because it is used for filtering
|
||||||
cached_attrs = ['cmdline', 'username']
|
cached_attrs = ['cmdline', 'username']
|
||||||
|
|
||||||
@ -454,7 +454,7 @@ class GlancesProcesses:
|
|||||||
)
|
)
|
||||||
# Only get the info key
|
# Only get the info key
|
||||||
# PsUtil 6+ no longer check PID reused #2755 so use is_running in the loop
|
# PsUtil 6+ no longer check PID reused #2755 so use is_running in the loop
|
||||||
# Note: not sure it is realy needed but CPU consumption look teh same with or without it
|
# Note: not sure it is realy needed but CPU consumption look the same with or without it
|
||||||
processlist = [p.info for p in processlist if p.is_running()]
|
processlist = [p.info for p in processlist if p.is_running()]
|
||||||
# Sort the processes list by the current sort_key
|
# Sort the processes list by the current sort_key
|
||||||
processlist = sort_stats(processlist, sorted_by=self.sort_key, reverse=True)
|
processlist = sort_stats(processlist, sorted_by=self.sort_key, reverse=True)
|
||||||
|
@ -136,7 +136,7 @@ class GlancesStats:
|
|||||||
"""Load additional plugins if defined"""
|
"""Load additional plugins if defined"""
|
||||||
|
|
||||||
def get_addl_plugins(self, plugin_path):
|
def get_addl_plugins(self, plugin_path):
|
||||||
"""Get list of additonal plugins"""
|
"""Get list of additional plugins"""
|
||||||
_plugin_list = []
|
_plugin_list = []
|
||||||
for plugin in os.listdir(plugin_path):
|
for plugin in os.listdir(plugin_path):
|
||||||
path = os.path.join(plugin_path, plugin)
|
path = os.path.join(plugin_path, plugin)
|
||||||
@ -167,7 +167,7 @@ class GlancesStats:
|
|||||||
sys.path.insert(0, path)
|
sys.path.insert(0, path)
|
||||||
for plugin in get_addl_plugins(self, path):
|
for plugin in get_addl_plugins(self, path):
|
||||||
if plugin in sys.modules:
|
if plugin in sys.modules:
|
||||||
logger.warn(f"Pugin {plugin} already in sys.modules, skipping (workaround: rename plugin)")
|
logger.warn(f"Plugin {plugin} already in sys.modules, skipping (workaround: rename plugin)")
|
||||||
else:
|
else:
|
||||||
start_duration.reset()
|
start_duration.reset()
|
||||||
try:
|
try:
|
||||||
|
Loading…
Reference in New Issue
Block a user