382 Commits
Author SHA1 Message Date
datrixlab ac741d299c Read web_x_ssl_verify as a boolean, not as a CA bundle path
GlancesWebList takes web_x_ssl_verify through config.get_value(), which
returns the raw string, and hands it to requests.head(verify=...).
Requests reads a string verify as the path to a CA bundle, so the value
from the configuration file is looked up as a file name:

    verify='false'            -> OSError: Could not find a suitable TLS CA
    verify='true'             -> OSError: ... invalid path: true
    verify=False / verify=True -> the request is actually made

ThreadScanner._web_scan catches everything and sets status='Error', so the
URL sits permanently red in the curses view and the WebUI, with only a
debug-level log line to explain it. Setting the key to true, which is what
a user does to turn verification back on explicitly, breaks the scan the
same way as false.

Read it with config.get_bool_value(), the helper the network and diskio
plugins already use for their switches, and keep a non-boolean value as a
string: a path to a CA bundle is a valid value for requests' verify, and
that is the one form that worked before.

The key was undocumented, which is probably how this survived; document it
next to the other web_x_ options in conf/glances.conf and docs/aoa/ports.rst.
2026-09-12 11:31:29 +07:00
Nicolas Hennion ba2c8b7fb9 Merge pull request #3722 from ntdatt812/fix/vms-decorations
fix(vms): colour the columns msg_curse already asks decorations for
2026-09-10 19:07:44 +02:00
Nguyen Thanh Dat f8657a0a97 fix(vms): colour the columns msg_curse already asks decorations for
The VM table asks for a decoration on four columns:

    self.get_views(item=vm['name'], key='cpu_count', option='decoration')
    self.get_views(item=vm['name'], key='cpu_time_rate_per_sec', ...)
    self.get_views(item=vm['name'], key='memory_usage', ...)
    self.get_views(item=vm['name'], key='load_1min', ...)

Nothing ever set one. No vms field declares `alert` or `log`, so the base
`_build_field_decoration` returns 'DEFAULT' for all of them, and
`update_views` only computed `show_engine_name`. Every one of those four
reads has always come back 'DEFAULT', which makes the VM table the one
table that never changes colour -- the sibling containers plugin has done
this since it was written.

Three of the four get thresholds, with the per-VM override and DEFAULT
fallback containers already uses. `cpu_count` keeps its read and no
colour: a core count is not a threshold.

Decorations are written onto the views the base already built rather than
replacing them, so `optional` and `hidden` survive -- containers replaces
the whole per-item view, which is why its curses code reads nested 'cpu'
and 'mem' keys instead of field names.

Thresholds are commented out in the shipped conf, so the table stays
exactly as it is until someone opts in.

Verified with tests/test_vms_decorations.py (9 passed) and by reverting
each claim: measuring memory against a fixed maximum instead of the VM's
own memory_total fails 4 tests, dropping the per-VM override fails 1.

A `value is None` guard was written first and removed: `get_alert` already
answers DEFAULT for a missing value, because the percentage it computes
raises TypeError and is caught, so no test could tell the guard from its
absence. A test pins that behaviour instead.
2026-09-08 09:21:09 +07:00
Nguyen Thanh Dat 20555568ff fix(npu): alert on the temperature both interfaces already ask for
update_views() replaced the base class's per-field views with a dict naming
only load, freq and mem, so views[npu_id]['temperature'] did not exist. Both
readers then fell back to no style: msg_curse's get_views() returns 'DEFAULT'
for a missing key, and the WebUI's getDecoration returns undefined. An Intel
NPU -- the one driver that reports the reading -- was printed plain at any
temperature.

Adds the key and the alert, mirroring the GPU plugin, which has had the same
three alerts (proc/mem/temperature) all along. A card whose driver leaves the
reading None (AMD, Rockchip) keeps a view with no decoration rather than being
alerted on nothing.

conf/glances.conf gains the matching [npu] temperature thresholds, using the
same 60/70/80 ladder as [gpu]: without limits get_alert() returns DEFAULT, so
the code half alone would change nothing.
2026-09-07 10:26:25 +07:00
nightcityblade 5c78c4b0db feat(fs): allow free-space display in config 2026-08-15 23:27:40 +08:00
nicolargo b155fbc50f Correct iowait thresolds 2026-08-01 10:30:49 +02:00
nicolargo 0de3b8f875 XML-RPC Multi-Origin CORS Configuration Silently Falls Back to Wildcard - CVE-2026-46608 2026-05-23 11:40:20 +02:00
nicolargoandClaude Opus 4.7 d9316dfac2 docs(conf): document xmlrpc_allowed_hosts in glances.conf
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-23 09:56:28 +02:00
cswaltzinger 4aa56a1734 quicklook gpu status thresholds added 2026-05-04 17:29:57 -04:00
cswaltzinger e1eb0970ab issue-1711 improvement completed - awaiting PR approval
config files restored to defaults
2026-04-29 20:02:35 -04:00
cswaltzinger 6b4428fbda quicklook plugin almost finished, awaiting testing
memory leak test fixed
2026-04-29 20:01:18 -04:00
nicolargo cec380536f Overwrite thresholds for a specific sensor is not taken into account - Related to #3525 2026-04-18 09:45:29 +02:00
csvke a8023b3e4c RV1126BP-70: Add config, docs, and unit tests for MPP plugin
- Add [mpp] section to conf/glances.conf with disable=True
- Add docs/aoa/mpp.rst documentation page and index entry
- Add unit test test_026_mpp with Rockchip MPP test fixtures
2026-04-11 01:34:44 +08:00
nicolargo 111a97a67f Improve plugins refresh rates 2026-03-28 14:19:20 +01:00
nicolargo b90a8f2a16 Cross-Origin System Information Disclosure via XML-RPC Server CORS Wildcard - Mitigate CVE-2026-33533 2026-03-28 10:20:49 +01:00
nicolargo b6a694f38f Add export to ClickHouse #3320 2026-03-22 10:15:17 +01:00
nicolargo d691238478 Default CORS Configuration Allows Cross-Origin Credential Theft - Correct CVE-2026-32610 2026-03-14 14:54:02 +01:00
nicolargo a8443489e3 REST/WebUI Lacks Host Validation and Remains Exposed to DNS Rebinding - Correct CVE-2026-32632 2026-03-14 13:48:25 +01:00
nicolargo f3e94930e3 SQL Injection in DuckDB Export via Unparameterized DDL Statements - Correct CVE-2026-32611 2026-03-14 10:33:24 +01:00
nicolargo ee4fab4c32 Browser API Exposes Reusable Downstream Credentials via - Correct CVE-2026-32633 2026-03-14 09:07:59 +01:00
nicolargo e6bce5bc7c MCP server rejects external host connections due to DNS rebinding protection #3467 2026-03-07 11:06:28 +01:00
nicolargo 0cb59f87b1 Disable NPU plugin by default waiting more test - see #3425 2026-02-09 08:13:34 +01:00
nicolargo 5f2e49dc96 Docker image for Glances release 4.5.0 failed to start if no [putputs] section in the glances.conf file #3424 2026-02-08 15:22:32 +01:00
nicolargo 1b6c553afa Change default bar char in the default configuration file 2026-02-08 10:09:13 +01:00
nicolargo 7d149b14bc Add NPU display for TUI 2026-01-24 15:57:32 +01:00
nicolargo 83da3de1a7 Add freq information about NPU 2026-01-24 15:57:31 +01:00
nicolargo 3c6057f192 Make the CPU_num option disable by default 2026-01-24 15:53:39 +01:00
Fabian Fleischer 7748003d8b Add CPU core number field to processlist 2026-01-22 12:49:10 +01:00
nicolargo a9562e361a Implementation of a JWT token thanks to Jose lib 2026-01-18 14:26:01 +01:00
nicolargo 84324615c5 Align conf file between default and the one used in Docker compose 2026-01-03 09:32:34 +01:00
Drakarah 862ac41b58 Merge branch 'develop' of https://github.com/nicolargo/glances into develop 2026-01-03 07:33:53 +00:00
nicolargo b7c6cce373 First version ok. Log message should be removed. Code should be tested. 2025-12-30 19:04:07 +01:00
Drakarah 29d7a15dab Add a hide_attributes to well hide attributes 2025-12-22 09:17:20 +00:00
nicolargo 50818213b1 What a sexy pre-commit config file ! 2025-11-22 18:48:13 +01:00
nicolargo 728b36a8c9 Correct an issue with FS Alert following implementation of action for all plugins 2025-11-16 09:55:32 +01:00
nicolargo e2a1606479 Remove test from config file 2025-11-16 09:41:54 +01:00
nicolargo ccb00ec252 Make WebUI and Restful API SSL compliant #3340 2025-11-11 18:34:51 +01:00
nicolargo ab68fcbe28 Add a focus option for the processlist plugin #3293 2025-11-11 10:40:06 +01:00
nicolargo 25da171479 Add some fetch templates as an example 2025-11-10 11:45:33 +01:00
nicolargo fb17066692 Update docs 2025-11-09 13:05:07 +01:00
nicolargo ea10748e07 Fs is OK 2025-11-09 12:58:12 +01:00
nicolargo 8bb2a8a91b Network IO is OK 2025-11-09 12:49:44 +01:00
nicolargo 5efa3a01a3 Update docs 2025-11-08 19:22:49 +01:00
nicolargo e11cb80492 First issue corrected. It is now possible to generate alarm for plugins returning a list (tested only with sensors). To be done for all plugins (add header adn actions_keys) 2025-11-08 18:40:20 +01:00
nicolargo 133f97efd8 Show used port in container section #2054 2025-11-01 10:27:34 +01:00
nicolargo 067eb918ad Sensors plugin refresh by default every 10 seconds 2025-10-24 18:35:30 +02:00
nicolargo 1b93758b65 [UI] Process virtual memory display can be disable by configuration #3299 2025-10-18 16:03:23 +02:00
nicolargo d0137830c2 Choose between used or available in the mem plugin #3288 2025-09-25 22:20:23 +02:00
nicolargo 6631b37d67 Revert "First version done. Need to be tested and documented."
This reverts commit 17eca1f6e6.
2025-09-21 16:44:28 +02:00
nicolargo fcdd792722 Update docs for DuckDB export 2025-09-21 15:09:28 +02:00