hassio-addons / addon-glances

Glances - Home Assistant Community Add-ons
https://addons.community
MIT License
146 stars 22 forks source link

⬆️ Update glances to v4 #474

Open renovate[bot] opened 1 month ago

renovate[bot] commented 1 month ago

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
glances ==3.4.0.5 -> ==4.1.2 age adoption passing confidence

Release Notes

nicolargo/glances (glances) ### [`v4.1.2`](https://togithub.com/nicolargo/glances/compare/v4.1.1...v4.1.2) [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.1.1...v4.1.2) ### [`v4.1.1`](https://togithub.com/nicolargo/glances/releases/tag/v4.1.1): Glances 4.1.1 [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.1.0...v4.1.1) ### Version 4.1.1 Bug corrected: - Sensors data is not exported using InfluxDB2 exporter [#​2856](https://togithub.com/nicolargo/glances/issues/2856) ### Version 4.1.0 Enhancements: - Call process_iter.clear_cache() (PsUtil 6+) when Glances user force a refresh (F5 or CTRL-R) [#​2753](https://togithub.com/nicolargo/glances/issues/2753) - PsUtil 6+ no longer check PID reused [#​2755](https://togithub.com/nicolargo/glances/issues/2755) - Add support for automatically hiding network interfaces that are down or that don't have any IP addresses [#​2799](https://togithub.com/nicolargo/glances/issues/2799) Bug corrected: - API: Network module is disabled but appears in endpoint "all" [#​2815](https://togithub.com/nicolargo/glances/issues/2815) - API is not compatible with requests containing spcial/encoding char [#​2820](https://togithub.com/nicolargo/glances/issues/2820) - 'j' hot key crashs Glances [#​2831](https://togithub.com/nicolargo/glances/issues/2831) - Raspberry PI - CPU info is not correct [#​2616](https://togithub.com/nicolargo/glances/issues/2616) - Graph export is broken if there is no graph section in Glances configuration file [#​2839](https://togithub.com/nicolargo/glances/issues/2839) - Glances API status check returns Error 405 - Method Not Allowed [#​2841](https://togithub.com/nicolargo/glances/issues/2841) - Rootless podman containers cause glances to fail with KeyError [#​2827](https://togithub.com/nicolargo/glances/issues/2827) - \--export-process-filter Filter using complete command [#​2824](https://togithub.com/nicolargo/glances/issues/2824) - Exception when Glances is ran with limited plugin list [#​2822](https://togithub.com/nicolargo/glances/issues/2822) - Disable separator option do not work [#​2823](https://togithub.com/nicolargo/glances/issues/2823) Continious integration and documentation: - test test\_107\_fs_plugin_method fails on aarch64-linux [#​2819](https://togithub.com/nicolargo/glances/issues/2819) Thanks to all contibutors and bug reporters ! Special thanks to: - Bharath Vignesh J K - RazCrimson - Vadim Smal ### [`v4.1.0`](https://togithub.com/nicolargo/glances/compare/v4.0.8...v4.1.0) [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.0.8...v4.1.0) ### [`v4.0.8`](https://togithub.com/nicolargo/glances/releases/tag/v4.0.8): Glances 4.0.8 [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.0.7...v4.0.8) ### Version 4.0.8 - Make CORS option configurable security webui [#​2812](https://togithub.com/nicolargo/glances/issues/2812) - When Glances is installed via venv, default configuration file is not used documentation packaging [#​2803](https://togithub.com/nicolargo/glances/issues/2803) - GET /1272f6e9e8f9d6bfd6de.png results in 404 bug webui [#​2781](https://togithub.com/nicolargo/glances/issues/2781) by Emporea was closed May 25, 2024 - Screen frequently flickers when outputting to local display bug needs test [#​2490](https://togithub.com/nicolargo/glances/issues/2490) - Retire ujson for being in maintenance mode dependencies enhancement [#​2791](https://togithub.com/nicolargo/glances/issues/2791) ### [`v4.0.7`](https://togithub.com/nicolargo/glances/releases/tag/v4.0.7): Glances 4.0.7 [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.0.6...v4.0.7) ### Version 4.0.7 - cpu_hz_current not available on NetBSD [#​2792](https://togithub.com/nicolargo/glances/issues/2792) - SensorType change in REST API breaks compatibility in 4.0.4 [#​2788](https://togithub.com/nicolargo/glances/issues/2788) ### Version 4.0.6 - No GPU info on Web View [#​2796](https://togithub.com/nicolargo/glances/issues/2796) ### Version 4.0.5 - SensorType change in REST API breaks compatibility in 4.0.4 [#​2788](https://togithub.com/nicolargo/glances/issues/2788) - Please make pydantic optional dependency, not required one [#​2777](https://togithub.com/nicolargo/glances/issues/2777) - Update the Grafana dashboard [#​2780](https://togithub.com/nicolargo/glances/issues/2780) - 4.0.4 - On Glances startup "ERROR -- Can not init battery class [#​2776](https://togithub.com/nicolargo/glances/issues/2776) - In codeSpace (with Python 3.8), an error occurs in ./unittest-restful.py [#​2773](https://togithub.com/nicolargo/glances/issues/2773) Use Ruff as default Linter. ### Version 4.0.4 Hostfix release for support sensors plugin on python 3.8 ### Version 4.0.3 Additional fixes for Sensor plugin ### Version 4.0.2 - hotfix: plugin(sensors) - race conditions btw fan_speed & temperature… [#​2766](https://togithub.com/nicolargo/glances/issues/2766) - fix: include requirements.txt and SECURITY.md for pypi dist [#​2761](https://togithub.com/nicolargo/glances/issues/2761) Thanks to RazCrimson for the sensors patch ! ### Version 4.0.1 Correct issue with CI (miss pydantic dep). ### Version 4.0.0 ![](https://raw.githubusercontent.com/nicolargo/glances/develop/docs/\_static/glances-summary.png) ### New Features #### Export individual processes stats Thanks to the new software architecture it is now possible to export individual processes stats. You should define the processes to export from the configuration file (section processlist /option export) or via the --export-process-filter option on the command line. Those options are a comma separated list of Glances filter (example bellow): - python.\*: Filter processes name or command line starting with python - .*python.*: Filter processes name or command line containing python - username:nicolargo: Processes belong to nicolargo user - cmdline:/usr/bin.\*: Processes starting by /usr/bin The following example exports all processes with the name 'python' or 'bash': [processlist] export=.*python.*,.*bash.* Note: or the --export-process-filter ".python.,.bash." option in the command line. Another example exports all processes belong to 'nicolargo' user: [processlist] export=username:nicolargo Note: or the --export-process-filter "username:nicolargo" option in the command line. Last example with the output result in a CSV file, with the following command line example: glances -C ./conf/glances.conf --export csv --export-csv-file /tmp/glances.csv --disable-plugin all --enable-plugin processlist --quiet the output CSV file (with the PID as primary key) will look like: timestamp,845992.memory_percent,845992.status,845992.num_threads,845992.cpu_timesuser,845992.cpu_timessystem,845992.cpu_timeschildren_user,845992.cpu_timeschildren_system,845992.cpu_timesiowait,845992.memory_inforss,845992.memory_infovms,845992.memory_infoshared,845992.memory_infotext,845992.memory_infolib,845992.memory_infodata,845992.memory_infodirty,845992.name,845992.io_counters,845992.nice,845992.cpu_percent,845992.pid,845992.gidsreal,845992.gidseffective,845992.gidssaved,845992.key,845992.time_since_update,845992.cmdline,845992.username,total,running,sleeping,thread,pid_max 2024-04-03 18:39:55,3.692938041968513,S,138,1702.88,567.89,1752.79,244.18,0.0,288919552,12871561216,95182848,856064,0,984535040,0,firefox,1863281664,0,0.5,845992,1000,1000,1000,pid,2.2084147930145264,/snap/firefox/3836/usr/lib/firefox/firefox,nicolargo,403,1,333,1511,0 2024-04-03 18:39:57,3.692938041968513,S,138,1702.88,567.89,1752.79,244.18,0.0,288919552,12871561216,95182848,856064,0,984535040,0,firefox,1863281664,0,0.5,845992,1000,1000,1000,pid,2.2084147930145264,/snap/firefox/3836/usr/lib/firefox/firefox,nicolargo,403,1,333,1511,0 Note: more details in issue [#​794](https://togithub.com/nicolargo/glances/issues/794). #### GPU plugin now support AMD GPU Lasts Linux Kernel expose the GPU stats in the /sys/class/drm folder. So, additionally to NVidia cards and without any external lib, Glances can display AMD GPU stats: ![image](https://togithub.com/nicolargo/glances/assets/776747/01d8cd20-6483-4922-a611-aeff2b104971) GPU plugin software architecture has been re-factorized in order to easily add others cards in the future (Intel). Note: more details in issue [#​993](https://togithub.com/nicolargo/glances/issues/993). #### Wifi plugin is back As Glances version 4 is no longer supported Python 2, Wifi plugin has been refactor and do not need any external library. Glances parses the /proc/net/wireless file on new Linux kernel. ![image](https://togithub.com/nicolargo/glances/assets/776747/e7957409-5e3c-40b9-8d77-e20d29414932) Note: more details in issue [#​1377](https://togithub.com/nicolargo/glances/issues/1377). #### Refactor alias configuration Alias has been completely refactor for all plugins in order to make it easier to configure. Glances version 3.x and lower: sda1_alias=InternalDisk sdb1_alias=ExternalDisk Glances version 4.x and higher: alias=sda1:InternalDisk,sdb1:ExternalDisk Note: more details in issue [#​1735](https://togithub.com/nicolargo/glances/issues/1735). #### Fields descriptions and units are now available through the API You can now get stat description and unit through the Glances version 4 API. $ curl http://0.0.0.0:61208/api/4/cpu/total {"total":6.3} $ curl http://0.0.0.0:61208/api/4/cpu/total/description "Sum of all CPU percentages (except idle)." $ curl http://0.0.0.0:61208/api/4/cpu/total/unit "percent" Note: more details in issue [#​2630](https://togithub.com/nicolargo/glances/issues/2630). #### Make the left menu configurable It is now possible to configure the plugins list displayed in the Curses and Web interfaces thanks to the left_menu option in the outputs section of the Glances configuration file: [outputs] left_menu=network,diskio Display: ![image](https://togithub.com/nicolargo/glances/assets/776747/2800a593-69ee-453f-89bd-f785f05192a9) #### Quick look plugin is now configurable By default it displays CPU, Memory and Load information. ![image](https://togithub.com/nicolargo/glances/assets/776747/fbea3f8e-68b3-4953-9fa9-c7271feff358) Example to cam back to the Glances version 3.0 configuration (with swap instead of load): [quicklook] ### Stats list (default is cpu,mem,load) ### Available stats are: cpu,mem,load,swap list=cpu,mem,swap ### Graphical bar char used in the terminal user interface (default is |) bar_char=| Note: More information in issue [#​2662](https://togithub.com/nicolargo/glances/issues/2662). #### Enhance per CPU display Number of cores increase, so the "Per CPU" plugin has been adpated in order to display the top 'n' CPU consuption ('n' is configurable from the Glances configuration file through the *max_cpu_display* option in the *percpu* section (default is 4 CPUs). ![image](https://togithub.com/nicolargo/glances/assets/776747/adc3aeb2-971c-4bf6-9f0c-a8d62d3e3409) Note: see more details in issue [#​2734](https://togithub.com/nicolargo/glances/issues/2734). #### Display guest CPU statistic in the CPU plugin On Linux, *guest* CPU is percentage of time a virtual CPU spends servicing another virtual CPU under the control of the kernel. ![image](https://togithub.com/nicolargo/glances/assets/776747/8fb9e110-5c40-4036-bb78-1c2d1ed560f4) - Ability to hide Engine and Pod columns in Containers [#​2423](https://togithub.com/nicolargo/glances/issues/2423) #### A new logo ! Last and not least, thanks to Elad [@​eBarazi](https://togithub.com/eBarazi)... ![image](https://togithub.com/nicolargo/glances/assets/776747/9e0f48f9-daee-4708-8de5-c53023188c1e) a new logo is released... ![image](https://togithub.com/nicolargo/glances/assets/776747/2d49bc6d-b6ae-44cb-8bd9-10a1ee5a01cd) ### Improvements #### Speed up Glances launch Glances version 3 takes between 2 and 3 seconds to start. Glances version 4 takes less than 1 seconds to start, with all plugins. See [#​1534](https://togithub.com/nicolargo/glances/issues/1534) for more information. #### Huge improvement of the Restful API documentation More example and information available in the single page documentation: https://github.com/nicolargo/glances/blob/develop/docs/api.rst ### Breaking changes #### Python version Support of Python 2 has been removed. Glances needs **Python 3.8 or higher**. #### Python dependencies For package maintainers, please note that standards dependencies have changed. Minimal requirements for Glances version 4 are: - psutil - defusedxml - packaging - ujson - pydantic - fastapi (for WebUI / RestFull API) - uvicorn (for WebUI / RestFull API) - jinja2 (for WebUI / RestFull API) Majors changes between Glances version 3 and version 4: - Bottle has been replaced by FastAPI and Uvicorn - CouchDB has been replaced by PyCouchDB - nvidia-ml-py has been replaced by py3nvml - pysnmp has been replaced by pysnmp-lextudio #### APIs - **XML/RPC API** have changed between Glances 3 and Glances 4. It is **not** possible to use a Glances 3.x client with a Glances 4.x. - **Restful API** upgraded to version 4 (default entry point is http://localhost:61208/api/4). #### Alias definition change in the configuration file Glances version 3.x and lower: sda1_alias=InternalDisk sdb1_alias=ExternalDisk Glances version 4.x and higher: alias=sda1:InternalDisk,sdb1:ExternalDisk More details in issue [#​1735](https://togithub.com/nicolargo/glances/issues/1735). #### Others - Alert data model change from a list of list to a list of dict [#​2633](https://togithub.com/nicolargo/glances/issues/2633) - Docker memory usage uses the same algorithm than docker stats [#​2637](https://togithub.com/nicolargo/glances/issues/2637) ### All the issues corrected in this version Enhancements: - Export individual processes stats [#​794](https://togithub.com/nicolargo/glances/issues/794) - \[WebUI] Feature Request: Ability to hide Engine and Pod columns in Containers [#​2423](https://togithub.com/nicolargo/glances/issues/2423) - \[IP plugin] Make the public ip information more configurable (not only from the Censys service) [#​2732](https://togithub.com/nicolargo/glances/issues/2732) - Getting field information (description, unit) from the API [#​2630](https://togithub.com/nicolargo/glances/issues/2630) - Refactor alias configuration and allow alias for fs devices [#​1735](https://togithub.com/nicolargo/glances/issues/1735) - Improve alert with mininimal interval/duration configuration keys [#​2558](https://togithub.com/nicolargo/glances/issues/2558) - \--stdout plugin.attr is not compliant with plugins returning list of dicts [#​2446](https://togithub.com/nicolargo/glances/issues/2446) - Lot's of log messages when a proxy is used with the Podman plugin [#​2714](https://togithub.com/nicolargo/glances/issues/2714) - \[WEBUI & CURSES] Make the left menu configurable [#​2648](https://togithub.com/nicolargo/glances/issues/2648) - \[WEBUI] Custom system header information [#​2695](https://togithub.com/nicolargo/glances/issues/2695) - \[CURSES] Use normal color for normal text instead of an arbitrary color [#​2687](https://togithub.com/nicolargo/glances/issues/2687) - \[WEBUI] Showing the full arguments on the command column of the TASKS [#​2634](https://togithub.com/nicolargo/glances/issues/2634) - Add graph export for GPU plugin (related to [#​2542](https://togithub.com/nicolargo/glances/issues/2542)) - Refactor Alert data model from list of list to list of dict [#​2633](https://togithub.com/nicolargo/glances/issues/2633) - Use enum instead of int for callback API version. [#​2712](https://togithub.com/nicolargo/glances/issues/2712) - Make the alerts number configurable (related to [#​2558](https://togithub.com/nicolargo/glances/issues/2558)) - \[WebUI] Added smart plugin support [#​2435](https://togithub.com/nicolargo/glances/issues/2435) - No more threshold display in the WebUI cpu/mem and memswap plugins [#​2420](https://togithub.com/nicolargo/glances/issues/2420) - Refactor Glances curses code [#​2580](https://togithub.com/nicolargo/glances/issues/2580) - Replace Bottle by FastAPI [#​2181](https://togithub.com/nicolargo/glances/issues/2181) - Replace py3nvml with nvidia-ml-py [#​2688](https://togithub.com/nicolargo/glances/issues/2688) Bug corrected: - Crash when reading timezone for generating alert [#​2659](https://togithub.com/nicolargo/glances/issues/2659) - Newline in container command corrupts display / hides container [#​2733](https://togithub.com/nicolargo/glances/issues/2733) - RAID plugin not showing up in Glances web UI (Docker install) [#​2716](https://togithub.com/nicolargo/glances/issues/2716) - Alerts showing different time than time plugin [#​2214](https://togithub.com/nicolargo/glances/issues/2214) - OpenBSD crash on start without a swap file/partition [#​2719](https://togithub.com/nicolargo/glances/issues/2719) - Folders plugin always fails on special directories [#​2518](https://togithub.com/nicolargo/glances/issues/2518) - Update dependency urllib3 to v2 [#​2397](https://togithub.com/nicolargo/glances/issues/2397) - Crach when ENTER key is pressed in the Alpine minimal image [#​2658](https://togithub.com/nicolargo/glances/issues/2658) - Crash when a process is pinned in the develop branch of Glances [#​2639](https://togithub.com/nicolargo/glances/issues/2639) - TERM setting causes glances to crash [#​2598](https://togithub.com/nicolargo/glances/issues/2598) - macOS: Read user config from ~/.config/glances [#​2641](https://togithub.com/nicolargo/glances/issues/2641) - Docker Prometheus issue with IRQ plugin [#​2564](https://togithub.com/nicolargo/glances/issues/2564) - Remove systemd from Curses (related to [#​2595](https://togithub.com/nicolargo/glances/issues/2595)) - Screen frequently flickers when outputting to local display [#​2490](https://togithub.com/nicolargo/glances/issues/2490) - Incorrect linux_distro in docker version glances [#​2439](https://togithub.com/nicolargo/glances/issues/2439) - Influxdb2 export not working [#​2407](https://togithub.com/nicolargo/glances/issues/2407) - Ignore/detect symlink loops in folders plugin [#​2494](https://togithub.com/nicolargo/glances/issues/2494) - Remove Clear-text logging of sensitive information - Code Scanning [#​36](https://togithub.com/nicolargo/glances/issues/36) - Cannot start Glances 3.4.0.1 on Windows 10: SIGHUP not defined [#​2408](https://togithub.com/nicolargo/glances/issues/2408) - 3.4.0 crash on startupwith minimal deps [#​2401](https://togithub.com/nicolargo/glances/issues/2401) CI and documentation: - New logo for Glances version 4.0 [#​2713](https://togithub.com/nicolargo/glances/issues/2713) - Update api.rst documentation [#​2496](https://togithub.com/nicolargo/glances/issues/2496) - Change Renovate config [#​2729](https://togithub.com/nicolargo/glances/issues/2729) - Docker compose password unrecognized arguments when applying docs [#​2698](https://togithub.com/nicolargo/glances/issues/2698) - Docker includes OS Release Volume mount info [#​2473](https://togithub.com/nicolargo/glances/issues/2473) - Update prometheus.rst, fix minor typos [#​2640](https://togithub.com/nicolargo/glances/issues/2640) - Fix typos and make grammatical and stylistic edits in project documentation [#​2625](https://togithub.com/nicolargo/glances/issues/2625) - MongoDB and CouchDB documentation flipped [#​2565](https://togithub.com/nicolargo/glances/issues/2565) - No module named 'influxdb' on the snap version of glances [#​1738](https://togithub.com/nicolargo/glances/issues/1738) Many thinks to the contributors: - Bharath Vignesh J K - Christoph Zimmermann - RazCrimson - Robin Candau - Github GPG acces - Continuous Integration - Georgiy Timchenko - turbocrime - Kiskae - snyk-bot - Alexander Grigoryev - Claes Hallström - Francois Pires - Maarten Kossen (mpkossen) - Osama Albahrani - csteiner - k26pl - kdkd - monochromec - and all the beta testers ! ### Ready to install/upgrade ? Have a look to the [documentation](https://togithub.com/nicolargo/glances?tab=readme-ov-file#installation). ### [`v4.0.6`](https://togithub.com/nicolargo/glances/releases/tag/v4.0.6): Glances 4.0.6 [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.0.5...v4.0.6) *** ![](https://raw.githubusercontent.com/nicolargo/glances/develop/docs/\_static/glances-summary.png) ### New Features #### Export individual processes stats Thanks to the new software architecture it is now possible to export individual processes stats. You should define the processes to export from the configuration file (section processlist /option export) or via the --export-process-filter option on the command line. Those options are a comma separated list of Glances filter (example bellow): - python.\*: Filter processes name or command line starting with python - .*python.*: Filter processes name or command line containing python - username:nicolargo: Processes belong to nicolargo user - cmdline:/usr/bin.\*: Processes starting by /usr/bin The following example exports all processes with the name 'python' or 'bash': [processlist] export=.*python.*,.*bash.* Note: or the --export-process-filter ".python.,.bash." option in the command line. Another example exports all processes belong to 'nicolargo' user: [processlist] export=username:nicolargo Note: or the --export-process-filter "username:nicolargo" option in the command line. Last example with the output result in a CSV file, with the following command line example: glances -C ./conf/glances.conf --export csv --export-csv-file /tmp/glances.csv --disable-plugin all --enable-plugin processlist --quiet the output CSV file (with the PID as primary key) will look like: timestamp,845992.memory_percent,845992.status,845992.num_threads,845992.cpu_timesuser,845992.cpu_timessystem,845992.cpu_timeschildren_user,845992.cpu_timeschildren_system,845992.cpu_timesiowait,845992.memory_inforss,845992.memory_infovms,845992.memory_infoshared,845992.memory_infotext,845992.memory_infolib,845992.memory_infodata,845992.memory_infodirty,845992.name,845992.io_counters,845992.nice,845992.cpu_percent,845992.pid,845992.gidsreal,845992.gidseffective,845992.gidssaved,845992.key,845992.time_since_update,845992.cmdline,845992.username,total,running,sleeping,thread,pid_max 2024-04-03 18:39:55,3.692938041968513,S,138,1702.88,567.89,1752.79,244.18,0.0,288919552,12871561216,95182848,856064,0,984535040,0,firefox,1863281664,0,0.5,845992,1000,1000,1000,pid,2.2084147930145264,/snap/firefox/3836/usr/lib/firefox/firefox,nicolargo,403,1,333,1511,0 2024-04-03 18:39:57,3.692938041968513,S,138,1702.88,567.89,1752.79,244.18,0.0,288919552,12871561216,95182848,856064,0,984535040,0,firefox,1863281664,0,0.5,845992,1000,1000,1000,pid,2.2084147930145264,/snap/firefox/3836/usr/lib/firefox/firefox,nicolargo,403,1,333,1511,0 Note: more details in issue [#​794](https://togithub.com/nicolargo/glances/issues/794). #### GPU plugin now support AMD GPU Lasts Linux Kernel expose the GPU stats in the /sys/class/drm folder. So, additionally to NVidia cards and without any external lib, Glances can display AMD GPU stats: ![image](https://togithub.com/nicolargo/glances/assets/776747/01d8cd20-6483-4922-a611-aeff2b104971) GPU plugin software architecture has been re-factorized in order to easily add others cards in the future (Intel). Note: more details in issue [#​993](https://togithub.com/nicolargo/glances/issues/993). #### Wifi plugin is back As Glances version 4 is no longer supported Python 2, Wifi plugin has been refactor and do not need any external library. Glances parses the /proc/net/wireless file on new Linux kernel. ![image](https://togithub.com/nicolargo/glances/assets/776747/e7957409-5e3c-40b9-8d77-e20d29414932) Note: more details in issue [#​1377](https://togithub.com/nicolargo/glances/issues/1377). #### Refactor alias configuration Alias has been completely refactor for all plugins in order to make it easier to configure. Glances version 3.x and lower: sda1_alias=InternalDisk sdb1_alias=ExternalDisk Glances version 4.x and higher: alias=sda1:InternalDisk,sdb1:ExternalDisk Note: more details in issue [#​1735](https://togithub.com/nicolargo/glances/issues/1735). #### Fields descriptions and units are now available through the API You can now get stat description and unit through the Glances version 4 API. $ curl http://0.0.0.0:61208/api/4/cpu/total {"total":6.3} $ curl http://0.0.0.0:61208/api/4/cpu/total/description "Sum of all CPU percentages (except idle)." $ curl http://0.0.0.0:61208/api/4/cpu/total/unit "percent" Note: more details in issue [#​2630](https://togithub.com/nicolargo/glances/issues/2630). #### Make the left menu configurable It is now possible to configure the plugins list displayed in the Curses and Web interfaces thanks to the left_menu option in the outputs section of the Glances configuration file: [outputs] left_menu=network,diskio Display: ![image](https://togithub.com/nicolargo/glances/assets/776747/2800a593-69ee-453f-89bd-f785f05192a9) #### Quick look plugin is now configurable By default it displays CPU, Memory and Load information. ![image](https://togithub.com/nicolargo/glances/assets/776747/fbea3f8e-68b3-4953-9fa9-c7271feff358) Example to cam back to the Glances version 3.0 configuration (with swap instead of load): [quicklook] ### Stats list (default is cpu,mem,load) ### Available stats are: cpu,mem,load,swap list=cpu,mem,swap ### Graphical bar char used in the terminal user interface (default is |) bar_char=| Note: More information in issue [#​2662](https://togithub.com/nicolargo/glances/issues/2662). #### Enhance per CPU display Number of cores increase, so the "Per CPU" plugin has been adpated in order to display the top 'n' CPU consuption ('n' is configurable from the Glances configuration file through the *max_cpu_display* option in the *percpu* section (default is 4 CPUs). ![image](https://togithub.com/nicolargo/glances/assets/776747/adc3aeb2-971c-4bf6-9f0c-a8d62d3e3409) Note: see more details in issue [#​2734](https://togithub.com/nicolargo/glances/issues/2734). #### Display guest CPU statistic in the CPU plugin On Linux, *guest* CPU is percentage of time a virtual CPU spends servicing another virtual CPU under the control of the kernel. ![image](https://togithub.com/nicolargo/glances/assets/776747/8fb9e110-5c40-4036-bb78-1c2d1ed560f4) - Ability to hide Engine and Pod columns in Containers [#​2423](https://togithub.com/nicolargo/glances/issues/2423) #### A new logo ! Last and not least, thanks to Elad [@​eBarazi](https://togithub.com/eBarazi)... ![image](https://togithub.com/nicolargo/glances/assets/776747/9e0f48f9-daee-4708-8de5-c53023188c1e) a new logo is released... ![image](https://togithub.com/nicolargo/glances/assets/776747/2d49bc6d-b6ae-44cb-8bd9-10a1ee5a01cd) ### Improvements #### Speed up Glances launch Glances version 3 takes between 2 and 3 seconds to start. Glances version 4 takes less than 1 seconds to start, with all plugins. See [#​1534](https://togithub.com/nicolargo/glances/issues/1534) for more information. #### Huge improvement of the Restful API documentation More example and information available in the single page documentation: https://github.com/nicolargo/glances/blob/develop/docs/api.rst ### Breaking changes #### Python version Support of Python 2 has been removed. Glances needs **Python 3.8 or higher**. #### Python dependencies For package maintainers, please note that standards dependencies have changed. Minimal requirements for Glances version 4 are: - psutil - defusedxml - packaging - ujson - pydantic - fastapi (for WebUI / RestFull API) - uvicorn (for WebUI / RestFull API) - jinja2 (for WebUI / RestFull API) Majors changes between Glances version 3 and version 4: - Bottle has been replaced by FastAPI and Uvicorn - CouchDB has been replaced by PyCouchDB - nvidia-ml-py has been replaced by py3nvml - pysnmp has been replaced by pysnmp-lextudio #### APIs - **XML/RPC API** have changed between Glances 3 and Glances 4. It is **not** possible to use a Glances 3.x client with a Glances 4.x. - **Restful API** upgraded to version 4 (default entry point is http://localhost:61208/api/4). #### Alias definition change in the configuration file Glances version 3.x and lower: sda1_alias=InternalDisk sdb1_alias=ExternalDisk Glances version 4.x and higher: alias=sda1:InternalDisk,sdb1:ExternalDisk More details in issue [#​1735](https://togithub.com/nicolargo/glances/issues/1735). #### Others - Alert data model change from a list of list to a list of dict [#​2633](https://togithub.com/nicolargo/glances/issues/2633) - Docker memory usage uses the same algorithm than docker stats [#​2637](https://togithub.com/nicolargo/glances/issues/2637) ### All the issues corrected in this version Enhancements: - Export individual processes stats [#​794](https://togithub.com/nicolargo/glances/issues/794) - \[WebUI] Feature Request: Ability to hide Engine and Pod columns in Containers [#​2423](https://togithub.com/nicolargo/glances/issues/2423) - \[IP plugin] Make the public ip information more configurable (not only from the Censys service) [#​2732](https://togithub.com/nicolargo/glances/issues/2732) - Getting field information (description, unit) from the API [#​2630](https://togithub.com/nicolargo/glances/issues/2630) - Refactor alias configuration and allow alias for fs devices [#​1735](https://togithub.com/nicolargo/glances/issues/1735) - Improve alert with mininimal interval/duration configuration keys [#​2558](https://togithub.com/nicolargo/glances/issues/2558) - \--stdout plugin.attr is not compliant with plugins returning list of dicts [#​2446](https://togithub.com/nicolargo/glances/issues/2446) - Lot's of log messages when a proxy is used with the Podman plugin [#​2714](https://togithub.com/nicolargo/glances/issues/2714) - \[WEBUI & CURSES] Make the left menu configurable [#​2648](https://togithub.com/nicolargo/glances/issues/2648) - \[WEBUI] Custom system header information [#​2695](https://togithub.com/nicolargo/glances/issues/2695) - \[CURSES] Use normal color for normal text instead of an arbitrary color [#​2687](https://togithub.com/nicolargo/glances/issues/2687) - \[WEBUI] Showing the full arguments on the command column of the TASKS [#​2634](https://togithub.com/nicolargo/glances/issues/2634) - Add graph export for GPU plugin (related to [#​2542](https://togithub.com/nicolargo/glances/issues/2542)) - Refactor Alert data model from list of list to list of dict [#​2633](https://togithub.com/nicolargo/glances/issues/2633) - Use enum instead of int for callback API version. [#​2712](https://togithub.com/nicolargo/glances/issues/2712) - Make the alerts number configurable (related to [#​2558](https://togithub.com/nicolargo/glances/issues/2558)) - \[WebUI] Added smart plugin support [#​2435](https://togithub.com/nicolargo/glances/issues/2435) - No more threshold display in the WebUI cpu/mem and memswap plugins [#​2420](https://togithub.com/nicolargo/glances/issues/2420) - Refactor Glances curses code [#​2580](https://togithub.com/nicolargo/glances/issues/2580) - Replace Bottle by FastAPI [#​2181](https://togithub.com/nicolargo/glances/issues/2181) - Replace py3nvml with nvidia-ml-py [#​2688](https://togithub.com/nicolargo/glances/issues/2688) Bug corrected: - Crash when reading timezone for generating alert [#​2659](https://togithub.com/nicolargo/glances/issues/2659) - Newline in container command corrupts display / hides container [#​2733](https://togithub.com/nicolargo/glances/issues/2733) - RAID plugin not showing up in Glances web UI (Docker install) [#​2716](https://togithub.com/nicolargo/glances/issues/2716) - Alerts showing different time than time plugin [#​2214](https://togithub.com/nicolargo/glances/issues/2214) - OpenBSD crash on start without a swap file/partition [#​2719](https://togithub.com/nicolargo/glances/issues/2719) - Folders plugin always fails on special directories [#​2518](https://togithub.com/nicolargo/glances/issues/2518) - Update dependency urllib3 to v2 [#​2397](https://togithub.com/nicolargo/glances/issues/2397) - Crach when ENTER key is pressed in the Alpine minimal image [#​2658](https://togithub.com/nicolargo/glances/issues/2658) - Crash when a process is pinned in the develop branch of Glances [#​2639](https://togithub.com/nicolargo/glances/issues/2639) - TERM setting causes glances to crash [#​2598](https://togithub.com/nicolargo/glances/issues/2598) - macOS: Read user config from ~/.config/glances [#​2641](https://togithub.com/nicolargo/glances/issues/2641) - Docker Prometheus issue with IRQ plugin [#​2564](https://togithub.com/nicolargo/glances/issues/2564) - Remove systemd from Curses (related to [#​2595](https://togithub.com/nicolargo/glances/issues/2595)) - Screen frequently flickers when outputting to local display [#​2490](https://togithub.com/nicolargo/glances/issues/2490) - Incorrect linux_distro in docker version glances [#​2439](https://togithub.com/nicolargo/glances/issues/2439) - Influxdb2 export not working [#​2407](https://togithub.com/nicolargo/glances/issues/2407) - Ignore/detect symlink loops in folders plugin [#​2494](https://togithub.com/nicolargo/glances/issues/2494) - Remove Clear-text logging of sensitive information - Code Scanning [#​36](https://togithub.com/nicolargo/glances/issues/36) - Cannot start Glances 3.4.0.1 on Windows 10: SIGHUP not defined [#​2408](https://togithub.com/nicolargo/glances/issues/2408) - 3.4.0 crash on startupwith minimal deps [#​2401](https://togithub.com/nicolargo/glances/issues/2401) CI and documentation: - New logo for Glances version 4.0 [#​2713](https://togithub.com/nicolargo/glances/issues/2713) - Update api.rst documentation [#​2496](https://togithub.com/nicolargo/glances/issues/2496) - Change Renovate config [#​2729](https://togithub.com/nicolargo/glances/issues/2729) - Docker compose password unrecognized arguments when applying docs [#​2698](https://togithub.com/nicolargo/glances/issues/2698) - Docker includes OS Release Volume mount info [#​2473](https://togithub.com/nicolargo/glances/issues/2473) - Update prometheus.rst, fix minor typos [#​2640](https://togithub.com/nicolargo/glances/issues/2640) - Fix typos and make grammatical and stylistic edits in project documentation [#​2625](https://togithub.com/nicolargo/glances/issues/2625) - MongoDB and CouchDB documentation flipped [#​2565](https://togithub.com/nicolargo/glances/issues/2565) - No module named 'influxdb' on the snap version of glances [#​1738](https://togithub.com/nicolargo/glances/issues/1738) Many thinks to the contributors: - Bharath Vignesh J K - Christoph Zimmermann - RazCrimson - Robin Candau - Github GPG acces - Continuous Integration - Georgiy Timchenko - turbocrime - Kiskae - snyk-bot - Alexander Grigoryev - Claes Hallström - Francois Pires - Maarten Kossen (mpkossen) - Osama Albahrani - csteiner - k26pl - kdkd - monochromec - and all the beta testers ! ### Ready to install/upgrade ? Have a look to the [documentation](https://togithub.com/nicolargo/glances?tab=readme-ov-file#installation). ### [`v4.0.5`](https://togithub.com/nicolargo/glances/compare/v4.0.4...v4.0.5) [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.0.4...v4.0.5) ### [`v4.0.4`](https://togithub.com/nicolargo/glances/releases/tag/v4.0.4): Glances 4.0.4 [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.0.3...v4.0.4) *** ![](https://raw.githubusercontent.com/nicolargo/glances/develop/docs/\_static/glances-summary.png) ### New Features #### Export individual processes stats Thanks to the new software architecture it is now possible to export individual processes stats. You should define the processes to export from the configuration file (section processlist /option export) or via the --export-process-filter option on the command line. Those options are a comma separated list of Glances filter (example bellow): - python.\*: Filter processes name or command line starting with python - .*python.*: Filter processes name or command line containing python - username:nicolargo: Processes belong to nicolargo user - cmdline:/usr/bin.\*: Processes starting by /usr/bin The following example exports all processes with the name 'python' or 'bash': [processlist] export=.*python.*,.*bash.* Note: or the --export-process-filter ".python.,.bash." option in the command line. Another example exports all processes belong to 'nicolargo' user: [processlist] export=username:nicolargo Note: or the --export-process-filter "username:nicolargo" option in the command line. Last example with the output result in a CSV file, with the following command line example: glances -C ./conf/glances.conf --export csv --export-csv-file /tmp/glances.csv --disable-plugin all --enable-plugin processlist --quiet the output CSV file (with the PID as primary key) will look like: timestamp,845992.memory_percent,845992.status,845992.num_threads,845992.cpu_timesuser,845992.cpu_timessystem,845992.cpu_timeschildren_user,845992.cpu_timeschildren_system,845992.cpu_timesiowait,845992.memory_inforss,845992.memory_infovms,845992.memory_infoshared,845992.memory_infotext,845992.memory_infolib,845992.memory_infodata,845992.memory_infodirty,845992.name,845992.io_counters,845992.nice,845992.cpu_percent,845992.pid,845992.gidsreal,845992.gidseffective,845992.gidssaved,845992.key,845992.time_since_update,845992.cmdline,845992.username,total,running,sleeping,thread,pid_max 2024-04-03 18:39:55,3.692938041968513,S,138,1702.88,567.89,1752.79,244.18,0.0,288919552,12871561216,95182848,856064,0,984535040,0,firefox,1863281664,0,0.5,845992,1000,1000,1000,pid,2.2084147930145264,/snap/firefox/3836/usr/lib/firefox/firefox,nicolargo,403,1,333,1511,0 2024-04-03 18:39:57,3.692938041968513,S,138,1702.88,567.89,1752.79,244.18,0.0,288919552,12871561216,95182848,856064,0,984535040,0,firefox,1863281664,0,0.5,845992,1000,1000,1000,pid,2.2084147930145264,/snap/firefox/3836/usr/lib/firefox/firefox,nicolargo,403,1,333,1511,0 Note: more details in issue [#​794](https://togithub.com/nicolargo/glances/issues/794). #### GPU plugin now support AMD GPU Lasts Linux Kernel expose the GPU stats in the /sys/class/drm folder. So, additionally to NVidia cards and without any external lib, Glances can display AMD GPU stats: ![image](https://togithub.com/nicolargo/glances/assets/776747/01d8cd20-6483-4922-a611-aeff2b104971) GPU plugin software architecture has been re-factorized in order to easily add others cards in the future (Intel). Note: more details in issue [#​993](https://togithub.com/nicolargo/glances/issues/993). #### Wifi plugin is back As Glances version 4 is no longer supported Python 2, Wifi plugin has been refactor and do not need any external library. Glances parses the /proc/net/wireless file on new Linux kernel. ![image](https://togithub.com/nicolargo/glances/assets/776747/e7957409-5e3c-40b9-8d77-e20d29414932) Note: more details in issue [#​1377](https://togithub.com/nicolargo/glances/issues/1377). #### Refactor alias configuration Alias has been completely refactor for all plugins in order to make it easier to configure. Glances version 3.x and lower: sda1_alias=InternalDisk sdb1_alias=ExternalDisk Glances version 4.x and higher: alias=sda1:InternalDisk,sdb1:ExternalDisk Note: more details in issue [#​1735](https://togithub.com/nicolargo/glances/issues/1735). #### Fields descriptions and units are now available through the API You can now get stat description and unit through the Glances version 4 API. $ curl http://0.0.0.0:61208/api/4/cpu/total {"total":6.3} $ curl http://0.0.0.0:61208/api/4/cpu/total/description "Sum of all CPU percentages (except idle)." $ curl http://0.0.0.0:61208/api/4/cpu/total/unit "percent" Note: more details in issue [#​2630](https://togithub.com/nicolargo/glances/issues/2630). #### Make the left menu configurable It is now possible to configure the plugins list displayed in the Curses and Web interfaces thanks to the left_menu option in the outputs section of the Glances configuration file: [outputs] left_menu=network,diskio Display: ![image](https://togithub.com/nicolargo/glances/assets/776747/2800a593-69ee-453f-89bd-f785f05192a9) #### Quick look plugin is now configurable By default it displays CPU, Memory and Load information. ![image](https://togithub.com/nicolargo/glances/assets/776747/fbea3f8e-68b3-4953-9fa9-c7271feff358) Example to cam back to the Glances version 3.0 configuration (with swap instead of load): [quicklook] ### Stats list (default is cpu,mem,load) ### Available stats are: cpu,mem,load,swap list=cpu,mem,swap ### Graphical bar char used in the terminal user interface (default is |) bar_char=| Note: More information in issue [#​2662](https://togithub.com/nicolargo/glances/issues/2662). #### Enhance per CPU display Number of cores increase, so the "Per CPU" plugin has been adpated in order to display the top 'n' CPU consuption ('n' is configurable from the Glances configuration file through the *max_cpu_display* option in the *percpu* section (default is 4 CPUs). ![image](https://togithub.com/nicolargo/glances/assets/776747/adc3aeb2-971c-4bf6-9f0c-a8d62d3e3409) Note: see more details in issue [#​2734](https://togithub.com/nicolargo/glances/issues/2734). #### Display guest CPU statistic in the CPU plugin On Linux, *guest* CPU is percentage of time a virtual CPU spends servicing another virtual CPU under the control of the kernel. ![image](https://togithub.com/nicolargo/glances/assets/776747/8fb9e110-5c40-4036-bb78-1c2d1ed560f4) - Ability to hide Engine and Pod columns in Containers [#​2423](https://togithub.com/nicolargo/glances/issues/2423) #### A new logo ! Last and not least, thanks to Elad [@​eBarazi](https://togithub.com/eBarazi)... ![image](https://togithub.com/nicolargo/glances/assets/776747/9e0f48f9-daee-4708-8de5-c53023188c1e) a new logo is released... ![image](https://togithub.com/nicolargo/glances/assets/776747/2d49bc6d-b6ae-44cb-8bd9-10a1ee5a01cd) ### Improvements #### Speed up Glances launch Glances version 3 takes between 2 and 3 seconds to start. Glances version 4 takes less than 1 seconds to start, with all plugins. See [#​1534](https://togithub.com/nicolargo/glances/issues/1534) for more information. #### Huge improvement of the Restful API documentation More example and information available in the single page documentation: https://github.com/nicolargo/glances/blob/develop/docs/api.rst ### Breaking changes #### Python version Support of Python 2 has been removed. Glances needs **Python 3.8 or higher**. #### Python dependencies For package maintainers, please note that standards dependencies have changed. Minimal requirements for Glances version 4 are: - psutil - defusedxml - packaging - ujson - pydantic - fastapi (for WebUI / RestFull API) - uvicorn (for WebUI / RestFull API) - jinja2 (for WebUI / RestFull API) Majors changes between Glances version 3 and version 4: - Bottle has been replaced by FastAPI and Uvicorn - CouchDB has been replaced by PyCouchDB - nvidia-ml-py has been replaced by py3nvml - pysnmp has been replaced by pysnmp-lextudio #### APIs - **XML/RPC API** have changed between Glances 3 and Glances 4. It is **not** possible to use a Glances 3.x client with a Glances 4.x. - **Restful API** upgraded to version 4 (default entry point is http://localhost:61208/api/4). #### Alias definition change in the configuration file Glances version 3.x and lower: sda1_alias=InternalDisk sdb1_alias=ExternalDisk Glances version 4.x and higher: alias=sda1:InternalDisk,sdb1:ExternalDisk More details in issue [#​1735](https://togithub.com/nicolargo/glances/issues/1735). #### Others - Alert data model change from a list of list to a list of dict [#​2633](https://togithub.com/nicolargo/glances/issues/2633) - Docker memory usage uses the same algorithm than docker stats [#​2637](https://togithub.com/nicolargo/glances/issues/2637) ### All the issues corrected in this version Enhancements: - Export individual processes stats [#​794](https://togithub.com/nicolargo/glances/issues/794) - \[WebUI] Feature Request: Ability to hide Engine and Pod columns in Containers [#​2423](https://togithub.com/nicolargo/glances/issues/2423) - \[IP plugin] Make the public ip information more configurable (not only from the Censys service) [#​2732](https://togithub.com/nicolargo/glances/issues/2732) - Getting field information (description, unit) from the API [#​2630](https://togithub.com/nicolargo/glances/issues/2630) - Refactor alias configuration and allow alias for fs devices [#​1735](https://togithub.com/nicolargo/glances/issues/1735) - Improve alert with mininimal interval/duration configuration keys [#​2558](https://togithub.com/nicolargo/glances/issues/2558) - \--stdout plugin.attr is not compliant with plugins returning list of dicts [#​2446](https://togithub.com/nicolargo/glances/issues/2446) - Lot's of log messages when a proxy is used with the Podman plugin [#​2714](https://togithub.com/nicolargo/glances/issues/2714) - \[WEBUI & CURSES] Make the left menu configurable [#​2648](https://togithub.com/nicolargo/glances/issues/2648) - \[WEBUI] Custom system header information [#​2695](https://togithub.com/nicolargo/glances/issues/2695) - \[CURSES] Use normal color for normal text instead of an arbitrary color [#​2687](https://togithub.com/nicolargo/glances/issues/2687) - \[WEBUI] Showing the full arguments on the command column of the TASKS [#​2634](https://togithub.com/nicolargo/glances/issues/2634) - Add graph export for GPU plugin (related to [#​2542](https://togithub.com/nicolargo/glances/issues/2542)) - Refactor Alert data model from list of list to list of dict [#​2633](https://togithub.com/nicolargo/glances/issues/2633) - Use enum instead of int for callback API version. [#​2712](https://togithub.com/nicolargo/glances/issues/2712) - Make the alerts number configurable (related to [#​2558](https://togithub.com/nicolargo/glances/issues/2558)) - \[WebUI] Added smart plugin support [#​2435](https://togithub.com/nicolargo/glances/issues/2435) - No more threshold display in the WebUI cpu/mem and memswap plugins [#​2420](https://togithub.com/nicolargo/glances/issues/2420) - Refactor Glances curses code [#​2580](https://togithub.com/nicolargo/glances/issues/2580) - Replace Bottle by FastAPI [#​2181](https://togithub.com/nicolargo/glances/issues/2181) - Replace py3nvml with nvidia-ml-py [#​2688](https://togithub.com/nicolargo/glances/issues/2688) Bug corrected: - Crash when reading timezone for generating alert [#​2659](https://togithub.com/nicolargo/glances/issues/2659) - Newline in container command corrupts display / hides container [#​2733](https://togithub.com/nicolargo/glances/issues/2733) - RAID plugin not showing up in Glances web UI (Docker install) [#​2716](https://togithub.com/nicolargo/glances/issues/2716) - Alerts showing different time than time plugin [#​2214](https://togithub.com/nicolargo/glances/issues/2214) - OpenBSD crash on start without a swap file/partition [#​2719](https://togithub.com/nicolargo/glances/issues/2719) - Folders plugin always fails on special directories [#​2518](https://togithub.com/nicolargo/glances/issues/2518) - Update dependency urllib3 to v2 [#​2397](https://togithub.com/nicolargo/glances/issues/2397) - Crach when ENTER key is pressed in the Alpine minimal image [#​2658](https://togithub.com/nicolargo/glances/issues/2658) - Crash when a process is pinned in the develop branch of Glances [#​2639](https://togithub.com/nicolargo/glances/issues/2639) - TERM setting causes glances to crash [#​2598](https://togithub.com/nicolargo/glances/issues/2598) - macOS: Read user config from ~/.config/glances [#​2641](https://togithub.com/nicolargo/glances/issues/2641) - Docker Prometheus issue with IRQ plugin [#​2564](https://togithub.com/nicolargo/glances/issues/2564) - Remove systemd from Curses (related to [#​2595](https://togithub.com/nicolargo/glances/issues/2595)) - Screen frequently flickers when outputting to local display [#​2490](https://togithub.com/nicolargo/glances/issues/2490) - Incorrect linux_distro in docker version glances [#​2439](https://togithub.com/nicolargo/glances/issues/2439) - Influxdb2 export not working [#​2407](https://togithub.com/nicolargo/glances/issues/2407) - Ignore/detect symlink loops in folders plugin [#​2494](https://togithub.com/nicolargo/glances/issues/2494) - Remove Clear-text logging of sensitive information - Code Scanning [#​36](https://togithub.com/nicolargo/glances/issues/36) - Cannot start Glances 3.4.0.1 on Windows 10: SIGHUP not defined [#​2408](https://togithub.com/nicolargo/glances/issues/2408) - 3.4.0 crash on startupwith minimal deps [#​2401](https://togithub.com/nicolargo/glances/issues/2401) CI and documentation: - New logo for Glances version 4.0 [#​2713](https://togithub.com/nicolargo/glances/issues/2713) - Update api.rst documentation [#​2496](https://togithub.com/nicolargo/glances/issues/2496) - Change Renovate config [#​2729](https://togithub.com/nicolargo/glances/issues/2729) - Docker compose password unrecognized arguments when applying docs [#​2698](https://togithub.com/nicolargo/glances/issues/2698) - Docker includes OS Release Volume mount info [#​2473](https://togithub.com/nicolargo/glances/issues/2473) - Update prometheus.rst, fix minor typos [#​2640](https://togithub.com/nicolargo/glances/issues/2640) - Fix typos and make grammatical and stylistic edits in project documentation [#​2625](https://togithub.com/nicolargo/glances/issues/2625) - MongoDB and CouchDB documentation flipped [#​2565](https://togithub.com/nicolargo/glances/issues/2565) - No module named 'influxdb' on the snap version of glances [#​1738](https://togithub.com/nicolargo/glances/issues/1738) Many thinks to the contributors: - Bharath Vignesh J K - Christoph Zimmermann - RazCrimson - Robin Candau - Github GPG acces - Continuous Integration - Georgiy Timchenko - turbocrime - Kiskae - snyk-bot - Alexander Grigoryev - Claes Hallström - Francois Pires - Maarten Kossen (mpkossen) - Osama Albahrani - csteiner - k26pl - kdkd - monochromec - and all the beta testers ! ### Ready to install/upgrade ? Have a look to the [documentation](https://togithub.com/nicolargo/glances?tab=readme-ov-file#installation). ### [`v4.0.3`](https://togithub.com/nicolargo/glances/releases/tag/v4.0.3) [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.0.2...v4.0.3) - Bug fixes for sensors plugin **Full Changelog**: https://github.com/nicolargo/glances/compare/v4.0.2...v4.0.3 ### [`v4.0.2`](https://togithub.com/nicolargo/glances/releases/tag/v4.0.2): Glances 4.0.2 [Compare Source](https://togithub.com/nicolargo/glances/compare/v4.0.1...v4.0.2) DRAFT UNDER CONSTRUCTION *** ![](https://raw.githubusercontent.com/nicolargo/glances/develop/docs/\_static/glances-summary.png) ### New Features #### Export individual processes stats Thanks to the new software architecture it is now possible to export individual processes stats. You should define the processes to export from the configuration file (section processlist /option export) or via the --export-process-filter option on the command line. Those options are a comma separated list of Glances filter (example bellow): - python.\*: Filter processes name or command line starting with python - .*python.*: Filter processes name or command line containing python - username:nicolargo: Processes belong to nicolargo user - cmdline:/usr/bin.\*: Processes starting by /usr/bin The following example exports all processes with the name 'python' or 'bash': [processlist] export=.*python.*,.*bash.* Note: or the --export-process-filter ".python.,.bash." option in the command line. Another example exports all processes belong to 'nicolargo' user: [processlist] export=username:nicolargo Note: or the --export-process-filter "username:nicolargo" option in the command line. Last example with the output result in a CSV file, with the following command line example: glances -C ./conf/glances.conf --export csv --export-csv-file /tmp/glances.csv --disable-plugin all --enable-plugin processlist --quiet the output CSV file (with the PID as primary key) will look like: timestamp,845992.memory_percent,845992.status,845992.num_threads,845992.cpu_timesuser,845992.cpu_timessystem,845992.cpu_timeschildren_user,845992.cpu_timeschildren_system,845992.cpu_timesiowait,845992.memory_inforss,845992.memory_infovms,845992.memory_infoshared,845992.memory_infotext,845992.memory_infolib,845992.memory_infodata,845992.memory_infodirty,845992.name,845992.io_counters,845992.nice,845992.cpu_percent,845992.pid,845992.gidsreal,845992.gidseffective,845992.gidssaved,845992.key,845992.time_since_update,845992.cmdline,845992.username,total,running,sleeping,thread,pid_max 2024-04-03 18:39:55,3.692938041968513,S,138,1702.88,567.89,1752.79,244.18,0.0,288919552,12871561216,95182848,856064,0,984535040,0,firefox,1863281664,0,0.5,845992,1000,1000,1000,pid,2.2084147930145264,/snap/firefox/3836/usr/lib/firefox/firefox,nicolargo,403,1,333,1511,0 2024-04-03 18:39:57,3.692938041968513,S,138,1702.88,567.89,1752.79,244.18,0.0,288919552,12871561216,95182848,856064,0,984535040,0,firefox,1863281664,0,0.5,845992,1000,1000,1000,pid,2.2084147930145264,/snap/firefox/3836/usr/lib/firefox/firefox,nicolargo,403,1,333,1511,0 Note: more details in issue [#​794](https://togithub.com/nicolargo/glances/issues/794). #### GPU plugin now support AMD GPU Lasts Linux Kernel expose the GPU stats in the /sys/class/drm folder. So, additionally to NVidia cards and without any external lib, Glances can display AMD GPU stats: ![image](https://togithub.com/nicolargo/glances/assets/776747/01d8cd20-6483-4922-a611-aeff2b104971) GPU plugin software architecture has been re-factorized in order to easily add others cards in the future (Intel). Note: more details in issue [#​993](https://togithub.com/nicolargo/glances/issues/993). #### Wifi plugin is back As Glances version 4 is no longer supported Python 2, Wifi plugin has been refactor and do not need any external library. Glances parses the /proc/net/wireless file on new Linux kernel. ![image](https://togithub.com/nicolargo/glances/assets/776747/e7957409-5e3c-40b9-8d77-e20d29414932) Note: more details in issue [#​1377](https://togithub.com/nicolargo/glances/issues/1377). #### Refactor alias configuration Alias has been completely refactor for all plugins in order to make it easier to configure. Glances version 3.x and lower: sda1_alias=InternalDisk sdb1_alias=ExternalDisk Glances version 4.x and higher: alias=sda1:InternalDisk,sdb1:ExternalDisk Note: more details in issue [#​1735](https://togithub.com/nicolargo/glances/issues/1735). #### Fields descriptions and units are now available through the API You can now get stat description and unit through the Glances version 4 API. $ curl http://0.0.0.0:61208/api/4/cpu/total {"total":6.3} $ curl http://0.0.0.0:61208/api/4/cpu/total/description "Sum of all CPU percentages (except idle)." $ curl http://0.0.0.0:61208/api/4/cpu/total/unit "percent" Note: more details in issue [#​2630](https://togithub.com/nicolargo/glances/issues/2630). #### Make the left menu configurable It is now possible to configure the plugins list displayed in the Curses and Web interfaces thanks to the left_menu option in the outputs section of the Glances configuration file: [outputs] left_menu=network,diskio Display: ![image](https://togithub.com/nicolargo/glances/assets/776747/2800a593-69ee-453f-89bd-f785f05192a9) #### Quick look plugin is now configurable By default it displays CPU, Memory and Load information. ![image](https://togithub.com/nicolargo/glances/assets/776747/fbea3f8e-68b

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.

coderabbitai[bot] commented 1 month ago

[!IMPORTANT]

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)
Tips ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit .` - `Generate unit testing code for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit testing code for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai generate interesting stats about this repository and render them as a table.` - `@coderabbitai show all the console.log statements in this repository.` - `@coderabbitai read src/utils.ts and generate unit testing code.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` - `@coderabbitai help me debug CodeRabbit configuration file.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (invoked as PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger an incremental review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai full review` to do a full review from scratch and review all the files again. - `@coderabbitai summary` to regenerate the summary of the PR. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai configuration` to show the current CodeRabbit configuration for the repository. - `@coderabbitai help` to get help. Additionally, you can add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. ### CodeRabbit Configration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information. - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json` ### Documentation and Community - Visit our [Documentation](https://coderabbit.ai/docs) for detailed information on how to use CodeRabbit. - Join our [Discord Community](https://discord.com/invite/GsXnASn26c) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.