]>
git.proxmox.com Git - proxmox-backup.git/blob - www/ServerStatus.js
1 Ext
.define('pve-rrd-node', {
2 extend
: 'Ext.data.Model',
7 convert: function(value
) {
14 convert: function(value
) {
32 name
: 'io_delay', calculate: function(data
) {
34 if (data
.read_ios
!== undefined) { ios
+= data
.read_ios
; }
35 if (data
.write_ios
!== undefined) { ios
+= data
.write_ios
; }
36 if (ios
== 0 || data
.io_ticks
=== undefined) {
39 return (data
.io_ticks
*1000.0)/ios
;
43 { type
: 'date', dateFormat
: 'timestamp', name
: 'time' }
46 Ext
.define('PBS.ServerStatus', {
47 extend
: 'Ext.panel.Panel',
48 alias
: 'widget.pbsServerStatus',
50 title
: gettext('ServerStatus'),
54 initComponent: function() {
57 var node_command = function(cmd
) {
58 Proxmox
.Utils
.API2Request({
59 params
: { command
: cmd
},
60 url
: '/nodes/localhost/status',
63 failure: function(response
, opts
) {
64 Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
);
69 var restartBtn
= Ext
.create('Proxmox.button.Button', {
70 text
: gettext('Reboot'),
72 confirmMsg
: gettext("Reboot backup server?"),
74 node_command('reboot');
79 var shutdownBtn
= Ext
.create('Proxmox.button.Button', {
80 text
: gettext('Shutdown'),
82 confirmMsg
: gettext("Shutdown backup server?"),
84 node_command('shutdown');
86 iconCls
: 'fa fa-power-off'
89 me
.tbar
= [ restartBtn
, shutdownBtn
, '->', { xtype
: 'proxmoxRRDTypeSelector' } ];
91 var rrdstore
= Ext
.create('Proxmox.data.RRDStore', {
92 rrdurl
: "/api2/json/nodes/localhost/rrd",
98 itemId
: 'itemcontainer',
108 xtype
: 'proxmoxRRDChart',
109 title
: gettext('CPU usage'),
110 fields
: ['cpu','iowait'],
111 fieldTitles
: [gettext('CPU usage'), gettext('IO wait')],
115 xtype
: 'proxmoxRRDChart',
116 title
: gettext('Server load'),
118 fieldTitles
: [gettext('Load average')],
122 xtype
: 'proxmoxRRDChart',
123 title
: gettext('Memory usage'),
124 fields
: ['memtotal','memused'],
125 fieldTitles
: [gettext('Total'), gettext('RAM usage')],
129 xtype
: 'proxmoxRRDChart',
130 title
: gettext('Swap usage'),
131 fields
: ['swaptotal','swapused'],
132 fieldTitles
: [gettext('Total'), gettext('Swap usage')],
136 xtype
: 'proxmoxRRDChart',
137 title
: gettext('Network traffic'),
138 fields
: ['netin','netout'],
142 xtype
: 'proxmoxRRDChart',
143 title
: gettext('Root Disk usage'),
144 fields
: ['total','used'],
145 fieldTitles
: [gettext('Total'), gettext('Disk usage')],
149 xtype
: 'proxmoxRRDChart',
150 title
: gettext('Root Disk Transfer Rate (bytes/second)'),
151 fields
: ['read_bytes','write_bytes'],
152 fieldTitles
: [gettext('Read'), gettext('Write')],
156 xtype
: 'proxmoxRRDChart',
157 title
: gettext('Root Disk Input/Output Operations per Second (IOPS)'),
158 fields
: ['read_ios','write_ios'],
159 fieldTitles
: [gettext('Read'), gettext('Write')],
163 xtype
: 'proxmoxRRDChart',
164 title
: gettext('Root Disk IO Delay (ms)'),
165 fields
: ['io_delay'],
166 fieldTitles
: [gettext('IO Delay')],
173 activate: function() {
174 rrdstore
.startUpdate();
176 destroy: function() {
177 rrdstore
.stopUpdate();