[pve-devel] [PATCH manager v4 06/15] ui: add pressure graphs to node and guest summary
Aaron Lauterer
a.lauterer at proxmox.com
Sat Jul 26 03:06:10 CEST 2025
From: Folke Gleumes <f.gleumes at proxmox.com>
Pressures are indicatios that processes needed to wait for their
resources. While 'some' means, that some of the processes on the host
(node summary) or in the guests cgroup had to wait, 'full' means that
all processes couldn't get the resources fast enough.
We set the colors accordingly. For 'some' we use yellow, for 'full' we
use red.
This should make it clear that this is not just another graph, but
indicates performance issues. It also sets the pressure graphs apart
from the other graphs that follow the usual color scheme.
Originally-by: Folke Gleumes <f.gleumes at proxmox.com>
[AL:
* rebased
* reworked commit msg
* set colors
]
Signed-off-by: Aaron Lauterer <a.lauterer at proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak at proxmox.com>
---
www/manager6/node/Summary.js | 27 +++++++++++++++++++++++++++
www/manager6/panel/GuestSummary.js | 30 ++++++++++++++++++++++++++++++
2 files changed, 57 insertions(+)
diff --git a/www/manager6/node/Summary.js b/www/manager6/node/Summary.js
index ed3d33d9..b00fcf2e 100644
--- a/www/manager6/node/Summary.js
+++ b/www/manager6/node/Summary.js
@@ -196,6 +196,33 @@ Ext.define('PVE.node.Summary', {
fields: ['netin', 'netout'],
store: rrdstore,
},
+ {
+ xtype: 'proxmoxRRDChart',
+ title: gettext('CPU pressure'),
+ fieldTitles: ['Some'],
+ fields: ['pressurecpusome'],
+ colors: ['#FFD13E', '#A61120'],
+ store: rrdstore,
+ unit: 'percent',
+ },
+ {
+ xtype: 'proxmoxRRDChart',
+ title: gettext('IO pressure'),
+ fieldTitles: ['Some', 'Full'],
+ fields: ['pressureiosome', 'pressureiofull'],
+ colors: ['#FFD13E', '#A61120'],
+ store: rrdstore,
+ unit: 'percent',
+ },
+ {
+ xtype: 'proxmoxRRDChart',
+ title: gettext('Memory pressure'),
+ fieldTitles: ['Some', 'Full'],
+ fields: ['pressurememorysome', 'pressurememoryfull'],
+ colors: ['#FFD13E', '#A61120'],
+ store: rrdstore,
+ unit: 'percent',
+ },
],
listeners: {
resize: function (panel) {
diff --git a/www/manager6/panel/GuestSummary.js b/www/manager6/panel/GuestSummary.js
index 5efbe40f..0b62dbb7 100644
--- a/www/manager6/panel/GuestSummary.js
+++ b/www/manager6/panel/GuestSummary.js
@@ -102,6 +102,36 @@ Ext.define('PVE.guest.Summary', {
fields: ['diskread', 'diskwrite'],
store: rrdstore,
},
+ {
+ xtype: 'proxmoxRRDChart',
+ title: gettext('CPU pressure'),
+ pveSelNode: me.pveSelNode,
+ fieldTitles: ['Some', 'Full'],
+ fields: ['pressurecpusome', 'pressurecpufull'],
+ colors: ['#FFD13E', '#A61120'],
+ store: rrdstore,
+ unit: 'percent',
+ },
+ {
+ xtype: 'proxmoxRRDChart',
+ title: gettext('IO pressure'),
+ pveSelNode: me.pveSelNode,
+ fieldTitles: ['Some', 'Full'],
+ fields: ['pressureiosome', 'pressureiofull'],
+ colors: ['#FFD13E', '#A61120'],
+ store: rrdstore,
+ unit: 'percent',
+ },
+ {
+ xtype: 'proxmoxRRDChart',
+ title: gettext('Memory pressure'),
+ pveSelNode: me.pveSelNode,
+ fieldTitles: ['Some', 'Full'],
+ fields: ['pressurememorysome', 'pressurememoryfull'],
+ colors: ['#FFD13E', '#A61120'],
+ store: rrdstore,
+ unit: 'percent',
+ },
);
}
--
2.39.5
More information about the pve-devel
mailing list