diff --git a/glances/outputs/static/html/plugins/irq.html b/glances/outputs/static/html/plugins/irq.html
index 50eb5406..8b2aa606 100644
--- a/glances/outputs/static/html/plugins/irq.html
+++ b/glances/outputs/static/html/plugins/irq.html
@@ -1,8 +1,10 @@
{{irq.irq_line}}
-
{{irq.irq_rate}}
+
+
{{irq.irq_rate}}
diff --git a/glances/outputs/static/html/stats.html b/glances/outputs/static/html/stats.html
index 5aee5b02..2974822e 100644
--- a/glances/outputs/static/html/stats.html
+++ b/glances/outputs/static/html/stats.html
@@ -49,10 +49,9 @@
-
-
-
+
+
diff --git a/glances/plugins/glances_help.py b/glances/plugins/glances_help.py
index 5369927c..109fef58 100644
--- a/glances/plugins/glances_help.py
+++ b/glances/plugins/glances_help.py
@@ -50,16 +50,16 @@ class Plugin(GlancesPlugin):
pass
def generate_view_data(self):
- self.view_data['version'] = '{} {}'.format(__appname__.title(), __version__)
- self.view_data['psutil_version'] = ' with PSutil {}'.format(psutil_version)
+ self.view_data['version'] = '{0} {1}'.format(__appname__.title(), __version__)
+ self.view_data['psutil_version'] = ' with PSutil {0}'.format(psutil_version)
try:
- self.view_data['configuration_file'] = 'Configuration file: {}'.format(self.config.loaded_config_file)
+ self.view_data['configuration_file'] = 'Configuration file: {0}'.format(self.config.loaded_config_file)
except AttributeError:
pass
- msg_col = ' {:1} {:35}'
- msg_col2 = ' {:1} {:35}'
+ msg_col = ' {0:1} {1:35}'
+ msg_col2 = ' {0:1} {1:35}'
self.view_data['sort_auto'] = msg_col.format('a', 'Sort processes automatically')
self.view_data['sort_network'] = msg_col2.format('b', 'Bytes or bits for network I/O')
self.view_data['sort_cpu'] = msg_col.format('c', 'Sort processes by CPU%')
@@ -74,8 +74,8 @@ class Plugin(GlancesPlugin):
self.view_data['sort_cpu_times'] = msg_col.format('t', 'Sort processes by TIME')
self.view_data['show_hide_help'] = msg_col2.format('h', 'Show/hide this help screen')
self.view_data['show_hide_diskio'] = msg_col.format('d', 'Show/hide disk I/O stats')
- self.view_data['show_hide_irq'] = msg_col2.format('R', 'Show/hide IRQ stats')
- self.view_data['view_network_io_combination'] = msg_col2.format('T', 'View network I/O as combination')
+ self.view_data['show_hide_irq'] = msg_col2.format('R', 'Show/hide IRQ stats')
+ self.view_data['view_network_io_combination'] = msg_col2.format('T', 'View network I/O as combination')
self.view_data['show_hide_filesystem'] = msg_col.format('f', 'Show/hide filesystem stats')
self.view_data['view_cumulative_network'] = msg_col2.format('U', 'View cumulative network I/O')
self.view_data['show_hide_network'] = msg_col.format('n', 'Show/hide network stats')
@@ -94,8 +94,6 @@ class Plugin(GlancesPlugin):
self.view_data['show_hide_ip'] = msg_col2.format('I', 'Show/hide IP module')
self.view_data['diskio_iops'] = msg_col2.format('B', 'Count/rate for Disk I/O')
self.view_data['show_hide_top_menu'] = msg_col2.format('5', 'Show/hide top menu (QL, CPU, MEM, SWAP and LOAD)')
- self.view_data['show_hide_amp'] = msg_col2.format('A', 'Show/hide AMP plugin')
- self.view_data['enable_disable_ports'] = msg_col.format('P', 'Enable/disable ports plugin')
self.view_data['edit_pattern_filter'] = 'ENTER: Edit the process filter pattern'
def get_view_data(self, args=None):
@@ -167,14 +165,11 @@ class Plugin(GlancesPlugin):
ret.append(self.curse_add_line(self.view_data['show_hide_top_menu']))
ret.append(self.curse_new_line())
ret.append(self.curse_add_line(self.view_data['enable_disable_short_processname']))
- ret.append(self.curse_add_line(self.view_data['show_hide_amp']))
+ ret.append(self.curse_add_line(self.view_data['show_hide_irq']))
ret.append(self.curse_new_line())
ret.append(self.curse_add_line(self.view_data['enable_disable_irix']))
ret.append(self.curse_add_line(self.view_data['quit']))
ret.append(self.curse_new_line())
- ret.append(self.curse_add_line(self.view_data['enable_disable_ports']))
- ret.append(self.curse_add_line(self.view_data['show_hide_irq']))
- ret.append(self.curse_new_line())
ret.append(self.curse_new_line())
diff --git a/glances/plugins/glances_irq.py b/glances/plugins/glances_irq.py
index af943150..5a1eec7d 100644
--- a/glances/plugins/glances_irq.py
+++ b/glances/plugins/glances_irq.py
@@ -38,7 +38,7 @@ class Plugin(GlancesPlugin):
# We want to display the stat in the curse interface
self.display_curse = True
- self.lasts = {}
+ self.lasts = {}
# Init the stats
self.reset()
@@ -58,40 +58,44 @@ class Plugin(GlancesPlugin):
# Reset the list
self.reset()
- if self.input_method == 'local':
- with open('/proc/interrupts') as irq_proc:
- time_since_update = getTimeSinceLastUpdate('irq')
- irq_proc.readline() # skip header line
- for irq_line in irq_proc.readlines():
- splitted_line = irq_line.split()
- irq_line = splitted_line[0].replace(':','')
- current_irqs = sum([int(count) for count in splitted_line[1:] if count.isdigit()]) # sum interrupts on all CPUs
- irq_rate = int(current_irqs - self.lasts.get(irq_line) if self.lasts.get(irq_line) else 0 // time_since_update)
- irq_current = {
- 'irq_line': irq_line,
- 'irq_rate': irq_rate,
- 'key': self.get_key(),
- 'time_since_update': time_since_update
- }
- self.stats.append(irq_current)
- self.lasts[irq_line] = current_irqs
+ if self.input_method == 'local':
+ with open('/proc/interrupts') as irq_proc:
+ time_since_update = getTimeSinceLastUpdate('irq')
+ irq_proc.readline() # skip header line
+ for irq_line in irq_proc.readlines():
+ splitted_line = irq_line.split()
+ irq_line = splitted_line[0].replace(':', '')
+ current_irqs = sum([int(count) for count in splitted_line[
+ 1:] if count.isdigit()]) # sum interrupts on all CPUs
+ irq_rate = int(
+ current_irqs -
+ self.lasts.get(irq_line) if self.lasts.get(irq_line) else 0 //
+ time_since_update)
+ irq_current = {
+ 'irq_line': irq_line,
+ 'irq_rate': irq_rate,
+ 'key': self.get_key(),
+ 'time_since_update': time_since_update
+ }
+ self.stats.append(irq_current)
+ self.lasts[irq_line] = current_irqs
- elif self.input_method == 'snmp':
- # not available
- pass
+ elif self.input_method == 'snmp':
+ # not available
+ pass
# Update the view
self.update_views()
- self.stats = sorted(self.stats, key=operator.itemgetter('irq_rate'), reverse=True)[:5] # top 5 IRQ by rate/s
- return self.stats
+ self.stats = sorted(self.stats, key=operator.itemgetter(
+ 'irq_rate'), reverse=True)[:5] # top 5 IRQ by rate/s
+ return self.stats
def update_views(self):
"""Update stats views."""
# Call the father's method
super(Plugin, self).update_views()
-
def msg_curse(self, args=None, max_width=None):
"""Return the dict to display in the curse interface."""
# Init the return message
@@ -110,14 +114,14 @@ class Plugin(GlancesPlugin):
# Header
msg = '{:{width}}'.format('IRQ', width=irq_max_width)
ret.append(self.curse_add_line(msg, "TITLE"))
- msg = '{:>7}'.format('Rate/s')
+ msg = '{:>14}'.format('Rate/s')
ret.append(self.curse_add_line(msg))
for i in self.stats:
ret.append(self.curse_new_line())
msg = '{:>3}'.format(i['irq_line'])
ret.append(self.curse_add_line(msg))
- msg = '{:>12}'.format(str(i['irq_rate']))
+ msg = '{:>20}'.format(str(i['irq_rate']))
ret.append(self.curse_add_line(msg))
return ret
diff --git a/unitest-xmlrpc.py b/unitest-xmlrpc.py
index 55211790..c57edc82 100755
--- a/unitest-xmlrpc.py
+++ b/unitest-xmlrpc.py
@@ -176,7 +176,7 @@ class TestGlances(unittest.TestCase):
self.assertIsInstance(req['cpu'], dict)
def test_012_irq(self):
- """IRQS"""
+ """IRQS"""
method = "getIrqs()"
print('INFO: [TEST_012] Method: %s' % method)
req = json.loads(client.getIrq())