From 1c2094998c30468deaab6700cac7b4866a02d7dc Mon Sep 17 00:00:00 2001 From: nicolargo Date: Tue, 31 Jan 2012 14:37:56 +0100 Subject: [PATCH] version 1.3.7 --- NEWS | 2 + README | 23 ++- README-fr | 27 ++- README.md | 232 +------------------------ TODO | 2 +- buildout.cfg | 2 +- doc/logs.png | Bin 0 -> 11975 bytes man/glances.1 | 4 +- screenshot.png | Bin 97775 -> 102609 bytes setup.py | 4 +- src/glances.py | 447 +++++++++++++++++++++++++++++++++++++------------ 11 files changed, 391 insertions(+), 352 deletions(-) mode change 100644 => 120000 README.md create mode 100644 doc/logs.png diff --git a/NEWS b/NEWS index d8600e75..15d68d23 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,8 @@ Version 1.3.7 ============= + * Display (if terminal space is available) an alerts history (logs) + * Add a limits classe to manage stats limits * Manage black and white console (issue #31) Version 1.3.6 diff --git a/README b/README index c2afdc1e..3ccb7acc 100644 --- a/README +++ b/README @@ -23,12 +23,12 @@ Packages exist for Arch, Fedora, Redhat ... Get the latest version: - $ wget https://github.com/downloads/nicolargo/glances/glances-1.3.6.tar.gz + $ wget https://github.com/downloads/nicolargo/glances/glances-1.3.7.tar.gz Glances use a standard GNU style installer: - $ tar zxvf glances-1.3.6.tar.gz - $ cd glances-1.3.6 + $ tar zxvf glances-1.3.7.tar.gz + $ cd glances-1.3.7 $ ./configure $ make $ sudo make install @@ -85,6 +85,7 @@ When Glances is running, you can press: * 'c' to sort the processes list by CPU consumption * 'd' Disable or enable the disk IO stats * 'f' Disable or enable the file system stats +* 'l' Disable or enable the logs * 'm' to sort the processes list by process size * 'n' Disable or enable the network interfaces stats * 'q' Exit @@ -208,6 +209,22 @@ sorted by CPU of memory consumption. The number of processes in the list is adapted to the screen size. +### Logs + +![screenshot](https://github.com/nicolargo/glances/raw/master/doc/logs.png) + +A logs list is displayed in the bottom of the screen if (an only if): + +* at least one WARNING or CRITICAL alert was occured. +* space is available in the bottom of the console/terminal + +There is one line per alert with the following information: + +* start date +* end date +* alert name +* (min/avg/max) values + ### Footer ![screenshot](https://github.com/nicolargo/glances/raw/master/doc/footer.png) diff --git a/README-fr b/README-fr index 370cc622..1507bb21 100644 --- a/README-fr +++ b/README-fr @@ -27,14 +27,14 @@ Le projet Glances est hébergé sur GitHUB: https://github.com/nicolargo/glances Pour l'installer, il suffit de suivre les instructions suivantes depuis un terminal. -Récupération de la dernière version (1.3.6): +Récupération de la dernière version (1.3.7): - $ wget https://github.com/downloads/nicolargo/glances/glances-1.3.6.tar.gz + $ wget https://github.com/downloads/nicolargo/glances/glances-1.3.7.tar.gz Procédez ensuite à l'installation: - $ tar zxvf glances-1.3.6.tar.gz - $ cd glances-1.3.6 + $ tar zxvf glances-1.3.7.tar.gz + $ cd glances-1.3.7 $ ./configure $ make $ sudo make install @@ -104,6 +104,7 @@ Quand Glances est lancé, il est possible d'utiliser les touches suivantes: * 'c' pour forcer le tri par consommation CPU * 'd' pour desactiver ou activer l'affichage des entrées/sorties disques * 'f' pour desactiver ou activer l'affichage de l'occupation des FS +* 'l' pour desactiver ou activer l'affichage des logs * 'm' pour forcer le tri par consommation MEMOIRE * 'n' pour desactiver ou activer l'affichage des interfaces réseau * 'q' sortir de Glances (il est également possible d'utiliser CTRL-C) @@ -229,6 +230,22 @@ détaillée. Le nombre des processus affichés est adapté à la taille de la fenêtre. +### Logs + +![screenshot](https://github.com/nicolargo/glances/raw/master/doc/logs.png) + +Une liste des dernières alertes relevées par Glances est affichée si: + +* au moins une alerte de type WARNING ou CRITICAL est arrivée +* la console/fenêtre dispose de la place nécessaire + +Glances affiche une ligne par alerte: + +* date de début +* date de fin +* description de l'alerte +* valeur (min/moyenne/max) lors de l'alerte + ### Pied de page ![screenshot](https://github.com/nicolargo/glances/raw/master/doc/footer.png) @@ -254,6 +271,4 @@ Notamment: * Packaging pour Debian, Ubuntu, BSD et toutes autres distributions * Controle de la présence des librairie dans le fichier configure.ac -* Inclure les stats de FS directement dans python-statgrab -* Ajout d'une fenêtre d'aide * Optimisation du code diff --git a/README.md b/README.md deleted file mode 100644 index c2afdc1e..00000000 --- a/README.md +++ /dev/null @@ -1,231 +0,0 @@ -[![Flattr this git repo](http://api.flattr.com/button/flattr-badge-large.png)](https://flattr.com/submit/auto?user_id=nicolargo&url=https://github.com/nicolargo/glances&title=Glances&language=&tags=github&category=software) - -============================= -Glances -- Eye on your system -============================= - -## Description - -Glances is a CLI curses based monitoring tool for GNU/Linux or BSD OS. - -Glances uses the libstatgrab library to get information from your system. -It is developed in Python and uses the python-statgrab lib. - -![screenshot](https://github.com/nicolargo/glances/raw/master/screenshot.png) - -## Installation - -### From package manager - -Packages exist for Arch, Fedora, Redhat ... - -### From source - -Get the latest version: - - $ wget https://github.com/downloads/nicolargo/glances/glances-1.3.6.tar.gz - -Glances use a standard GNU style installer: - - $ tar zxvf glances-1.3.6.tar.gz - $ cd glances-1.3.6 - $ ./configure - $ make - $ sudo make install - -Pre-requisites: - -* Python 2.6+ (not tested with Python 3+) -* python-statgrab 0.5+ (did NOT work with python-statgrab 0.4) - -Notes: For Debian. -The Debian Squeeze repos only include the python-statgrab 0.4. -You had to install the version 0.5 using the following commands: - - $ sudo apt-get install libstatgrab-dev pkg-config python-dev make - $ wget http://ftp.uk.i-scream.org/sites/ftp.i-scream.org/pub/i-scream/pystatgrab/pystatgrab-0.5.tar.gz - $ tar zxvf pystatgrab-0.5.tar.gz - $ cd pystatgrab-0.5/ - $ ./setup.py build - $ sudo ./setup.py install - -Notes: For Ubuntu 10.04 and 10.10. -The instruction to install the version 0.5 are here: -https://github.com/nicolargo/glances/issues/5#issuecomment-3033194 - -## Running - -Easy: - - $ glances.py - -## User guide - -By default, stats are refreshed every second, to change this setting, you can -use the -t option. For exemple to set the refrech rate to 5 seconds: - - $ glances.py -t 5 - -Importants stats are colored: - -* GREEN: stat counter is "OK" -* BLUE: stat counter is "CAREFUL" -* MAGENTA: stat counter is "WARNING" -* RED: stat counter is "CRITICAL" - -When Glances is running, you can press: - -* 'h' to display an help message whith the keys you can press -* 'a' to set the automatic mode. The processes are sorted automatically - - If CPU > 70%, sort by process "CPU consumption" - - If MEM > 70%, sort by process "memory size" - -* 'c' to sort the processes list by CPU consumption -* 'd' Disable or enable the disk IO stats -* 'f' Disable or enable the file system stats -* 'm' to sort the processes list by process size -* 'n' Disable or enable the network interfaces stats -* 'q' Exit - -### Header - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/header.png) - -The header shows the Glances version, the host name and the operating -system name, version and architecture. - -### CPU - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/cpu.png) - -The CPU states are shown as a percentage and for the configured refresh -time. - -If user|kernel|nice CPU is < 50%, then status is set to "OK". - -If user|kernel|nice CPU is > 50%, then status is set to "CAREFUL". - -If user|kernel|nice CPU is > 70%, then status is set to "WARNING". - -If user|kernel|nice CPU is > 90%, then status is set to "CRITICAL". - -### Load - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/load.png) - -On the Nosheep blog, Zach defines the average load: "In short it is the -average sum of the number of processes waiting in the run-queue plus the -number currently executing over 1, 5, and 15 minute time periods." - -Glances gets the number of CPU cores to adapt the alerts. With Glances, -alerts on average load are only set on 5 and 15 mins. - -If average load is < O.7*Core, then status is set to "OK". - -If average load is > O.7*Core, then status is set to "CAREFUL". - -If average load is > 1*Core, then status is set to "WARNING". - -If average load is > 5*Core, then status is set to "CRITICAL". - -### Memory - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/mem.png) - -Glances uses tree columns: memory (RAM), swap and "real". - -Real used memory is: used - cache. - -Real free memory is: free + cache. - -With Glances, alerts are only set for on used swap and real memory. - -If memory is < 50%, then status is set to "OK". - -If memory is > 50%, then status is set to "CAREFUL". - -If memory is > 70%, then status is set to "WARNING". - -If memory is > 90%, then status is set to "CRITICAL". - -### Network bit rate - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/network.png) - -Glances display the network interface bit rate. The unit is adapted -dynamicaly (bits per second, Kbits per second, Mbits per second...). - -Alerts are set only if the network interface maximum speed is available. - -If bitrate is < 50%, then status is set to "OK". - -If bitrate is > 50%, then status is set to "CAREFUL". - -If bitrate is > 70%, then status is set to "WARNING". - -If bitrate is > 90%, then status is set to "CRITICAL". - -For exemple, on a 100 Mbps Ethernet interface, the warning status is set -if the bit rate is higher than 70 Mbps. - -### Disk I/O - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/diskio.png) - -Glances display the disk I/O throughput. The unit is adapted dynamicaly -(bytes per second, Kbytes per second, Mbytes per second...). - -There is no alert on this information. - -### Filesystem - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/fs.png) - -Glances display the total and used filesytem disk space. The unit is -adapted dynamicaly (bytes per second, Kbytes per second, Mbytes per -second...). - -Alerts are set for used disk space: - -If disk used is < 50%, then status is set to "OK". - -If disk used is > 50%, then status is set to "CAREFUL". - -If disk used is > 70%, then status is set to "WARNING". - -If disk used is > 90%, then status is set to "CRITICAL". - -### Processes - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/processlist.png) - -Glances displays a summary and a list of processes. - -By default (or if you hit the 'a' key) the process list is automaticaly -sorted by CPU of memory consumption. - -The number of processes in the list is adapted to the screen size. - -### Footer - -![screenshot](https://github.com/nicolargo/glances/raw/master/doc/footer.png) - -Glances displays a caption and the current time/date. - -## Localisation - -To generate french locale execute as root or sudo : -i18n_francais_generate.sh - -To generate spanish locale execute as root or sudo : -i18n_espanol_generate.sh - -## Todo - -You are welcome to contribute to this software. - -* Packaging for Debian, Ubuntu, BSD... -* Check the needed Python library in the configure.ac -* Add file system stats when the python-statgrab is corrected diff --git a/README.md b/README.md new file mode 120000 index 00000000..100b9382 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +README \ No newline at end of file diff --git a/TODO b/TODO index 9e665f42..0531dad3 100644 --- a/TODO +++ b/TODO @@ -1,4 +1,4 @@ - Packaging for .deb (Debian|Ubuntu|Mint) Linux distributions (contributors needed) - Test/coding for xBSD - Add control to check the libstatgrab version in the script -- Add thermal information for CPU (issue #26) +- Add a limit class to manage the OK ,CAREFUL,WARNING,CRITICAL limits diff --git a/buildout.cfg b/buildout.cfg index d87898f5..dfdf6b0f 100644 --- a/buildout.cfg +++ b/buildout.cfg @@ -30,7 +30,7 @@ include-site-packages = false allowed-eggs-from-site-packages = false [config] -glances_version = 1.3.6 +glances_version = 1.3.7 pystatgrab_version = 0.5 pystatgrab_download_url = http://ftp.uk.i-scream.org/sites/ftp.i-scream.org/pub/i-scream/pystatgrab diff --git a/doc/logs.png b/doc/logs.png new file mode 100644 index 0000000000000000000000000000000000000000..d51f2be8c85d6d9ae6fd478b2a901b81040d72bb GIT binary patch literal 11975 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 literal 0 HcmV?d00001 diff --git a/man/glances.1 b/man/glances.1 index 70229719..5fd60e39 100644 --- a/man/glances.1 +++ b/man/glances.1 @@ -1,4 +1,4 @@ -.TH glances 1 "January, 2012" "version 1.3.6" "USER COMMANDS" +.TH glances 1 "January, 2012" "version 1.3.7" "USER COMMANDS" .SH NAME glances \- CLI curses based monitoring tool .SH SYNOPSIS @@ -22,6 +22,8 @@ You can use the following keys to sort the processesi list: 'f' Disable or enable the file system stats .PP 'h' Hide or show the help message +.PP + 'l' Hide or show the logs .PP 'm' the processes list is sorted by process size .PP diff --git a/screenshot.png b/screenshot.png index 04d5faf3e0023af50cdc6bfe7eeec118cd8c0b33..a9efb2b59bb31b5180c97ba2942236ddf8f33df6 100644 GIT binary patch literal 102609 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."; # -import os -import getopt -import sys -import signal -import time -import datetime -import multiprocessing -import gettext +from __future__ import generators -#i18n -#==== +try: + import os + import getopt + import sys + import signal + import time + import datetime + import multiprocessing + import gettext +except KeyboardInterrupt: + pass + + +# i18n +#===== application = 'glances' +__version__ = "1.3.7" gettext.install(application) try: import statgrab except: - print 'Statgrab initialization failed, Glances cannot start.' - print '' + print _('Statgrab initialization failed, Glances cannot start.') + print sys.exit(1) try: @@ -49,14 +56,9 @@ except: print sys.exit(1) -# Globals variables -#================== - -# The glances version id -__version__ = "1.3.6" -# Class -#====== +# Classes +#======== class Timer(): """ @@ -64,12 +66,147 @@ class Timer(): """ def __init__(self, duration): + self.started(duration) + + def started(self, duration): self.target = time.time() + duration def finished(self): return time.time() > self.target +class glancesLimits(): + """ + Manage the limit OK,CAREFUL,WARNING,CRITICAL for each stats + """ + + # The limit list is stored in an hash table: + # limits_list[STAT] = [ CAREFUL , WARNING , CRITICAL ] + # Exemple: + # limits_list['STD'] = [ 50, 70 , 90 ] + + __limits_list = { # CAREFUL WARNING CRITICAL + 'STD': [50, 70, 90], + 'LOAD': [0.7, 1.0, 5.0] + } + + def getSTDCareful(self): + return self.__limits_list['STD'][0] + + def getSTDWarning(self): + return self.__limits_list['STD'][1] + + def getSTDCritical(self): + return self.__limits_list['STD'][2] + + def getLOADCareful(self, core = 1): + return self.__limits_list['LOAD'][0] * core + + def getLOADWarning(self, core = 1): + return self.__limits_list['LOAD'][1] * core + + def getLOADCritical(self, core = 1): + return self.__limits_list['LOAD'][2] * core + + +class glancesLogs(): + """ + The main class to manage logs inside the Glances software + Logs is a list of list: + [["begin", "end", "WARNING|CRITICAL", "CPU|LOAD|MEM", MAX, AVG, MIN, SUM, COUNT],...] + """ + + def __init__(self): + """ + Init the logs classe + """ + # Maximum size of the logs list + self.logs_max = 10 + + # Init the logs list + self.logs_list = [] + + def get(self): + """ + Return the logs list (RAW) + """ + return self.logs_list + + def len(self): + """ + Return the number of item in the log list + """ + return self.logs_list.__len__() + + def __itemexist__(self, item_type): + """ + An item exist in the list if: + * end is < 0 + * item_type is matching + """ + for i in range(self.len()): + if ((self.logs_list[i][1] < 0) and + (self.logs_list[i][3] == item_type)): + return i + return -1 + + def add(self, item_state, item_type, item_value): + """ + item_state = "OK|CAREFUL|WARNING|CRITICAL" + item_type = "CPU|LOAD|MEM" + item_value = value + Item is defined by: + ["begin", "end", "WARNING|CRITICAL", "CPU|LOAD|MEM", MAX, AVG, MIN, SUM, COUNT] + If item is a 'new one': + Add the new item at the beginning of the logs list + Else: + Update the existing item + """ + item_index = self.__itemexist__(item_type) + if (item_index < 0): + # Item did not exist, add if WARNING or CRITICAL + if ((item_state == "WARNING") or + (item_state == "CRITICAL")): + # Time is stored in Epoch format + # Epoch -> DMYHMS = datetime.datetime.fromtimestamp(epoch) + item = [] + item.append(time.mktime(datetime.datetime.now().timetuple())) + item.append(-1) + item.append(item_state) # STATE: WARNING|CRITICAL + item.append(item_type) # TYPE: CPU, LOAD, MEM... + item.append(item_value) # MAX + item.append(item_value) # AVG + item.append(item_value) # MIN + item.append(item_value) # SUM + item.append(1) # COUNT + self.logs_list.insert(0, item) + if (self.len() > self.logs_max): + self.logs_list.pop() + else: + # Item exist, update + if ((item_state == "OK") or + (item_state == "CAREFUL")): + # Close the item + self.logs_list[item_index][1] = time.mktime(datetime.datetime.now().timetuple()) + else: + # Update the item + # State + if (item_state == "CRITICAL"): + self.logs_list[item_index][2] = item_state + # Value + if (item_value > self.logs_list[item_index][4]): + # MAX + self.logs_list[item_index][4] = item_value + elif (item_value < self.logs_list[item_index][6]): + # MIN + self.logs_list[item_index][6] = item_value + # AVG + self.logs_list[item_index][7] += item_value + self.logs_list[item_index][8] += 1 + self.logs_list[item_index][5] = self.logs_list[item_index][7] / self.logs_list[item_index][8] + return self.len() + + class glancesGrabFs(): """ Get FS stats: idem as structure http://www.i-scream.org/libstatgrab/docs/sg_get_fs_stats.3.html @@ -281,7 +418,7 @@ class glancesStats(): # Else sort by cpu comsoption sortedby = 'cpu_percent' if ( self.mem['total'] != 0): - if ( ( (self.mem['used'] - self.mem['cache']) * 100 / self.mem['total']) > 70): + if ( ( (self.mem['used'] - self.mem['cache']) * 100 / self.mem['total']) > limits.getSTDWarning()): sortedby = 'proc_size' return sorted(self.process, key=lambda process: process[sortedby], reverse=True) @@ -296,8 +433,8 @@ class glancesScreen(): """ # By default the process list is automaticaly sorted - # If global CPU > 75% => Sorted by process Cpu consomption - # If global used MEM > 75% => Sorted by process size + # If global CPU > WANRING => Sorted by process Cpu consomption + # If global used MEM > WARINING => Sorted by process size __process_sortedby = 'auto' def __init__(self, refresh_time = 1): @@ -315,6 +452,7 @@ class glancesScreen(): self.diskio_x = 0 ; self.diskio_y = -1 self.fs_x = 0 ; self.fs_y = -1 self.process_x = 30; self.process_y = 9 + self.log_x = 0 ; self.log_y = -1 self.help_x = 30; self.help_y = 12 self.now_x = 79; self.now_y = 3 self.caption_x = 0 ; self.caption_y = 3 @@ -355,29 +493,45 @@ class glancesScreen(): # Colors text styles self.no_color = curses.color_pair(1) self.default_color = curses.color_pair(3)|curses.A_BOLD - self.if50pc_color = curses.color_pair(4)|curses.A_BOLD - self.if70pc_color = curses.color_pair(5)|curses.A_BOLD - self.if90pc_color = curses.color_pair(2)|curses.A_BOLD + self.ifCAREFUL_color = curses.color_pair(4)|curses.A_BOLD + self.ifWARNING_color = curses.color_pair(5)|curses.A_BOLD + self.ifCRITICAL_color = curses.color_pair(2)|curses.A_BOLD else: # B&W text styles self.no_color = curses.A_NORMAL self.default_color = curses.A_NORMAL - self.if50pc_color = curses.A_UNDERLINE - self.if70pc_color = curses.A_BOLD - self.if90pc_color = curses.A_REVERSE + self.ifCAREFUL_color = curses.A_UNDERLINE + self.ifWARNING_color = curses.A_BOLD + self.ifCRITICAL_color = curses.A_REVERSE + + # Define the colors list (hash table) + self.__colors_list = { + # CAREFUL WARNING CRITICAL + 'DEFAULT': self.no_color, + 'OK': self.default_color, + 'CAREFUL': self.ifCAREFUL_color, + 'WARNING': self.ifWARNING_color, + 'CRITICAL': self.ifCRITICAL_color + } # By default all the stats are displayed self.network_tag = True self.diskio_tag = True self.fs_tag = True + self.log_tag = True # Init main window self.term_window = self.screen.subwin(0, 0) # Init help panel - term_help = self.screen.subwin(self.term_h-self.help_y-2, self.term_w-self.help_x, self.help_y, self.help_x) - self.panel_help = curses.panel.new_panel(term_help) - self.hideHelp() + # TODO: pb when size of the screen < 22 lines + screen_x = self.screen.getmaxyx()[1] + screen_y = self.screen.getmaxyx()[0] + if (screen_x > (self.term_w-self.help_x) and + (screen_y > (self.term_h-self.help_y-2))): + term_help = self.screen.subwin(self.term_h-self.help_y-2, self.term_w-self.help_x, self.help_y, self.help_x) + self.panel_help = curses.panel.new_panel(term_help) + self.hideHelp() # Init refresh time self.__refresh_time = refresh_time @@ -413,69 +567,76 @@ class glancesScreen(): else: return str(int(val)) - def __getColor(self, current = 0, max = 100): - # If current > 50% of max then color = self.if50pc_color / A_DIM - # If current > 70% of max then color = self.if70pc_color / A_BOLD - # If current > 90% of max then color = self.if90pc_color / A_REVERSE - # By default: color = self.default_color / 0 + def __getAlert(self, current = 0, max = 100): + # If current < CAREFUL of max then alert = OK + # If current > CAREFUL of max then alert = CAREFUL + # If current > WARNING of max then alert = WARNING + # If current > CRITICAL of max then alert = CRITICAL try: (current * 100) / max except ZeroDivisionError: - return 0 + return 'DEFAULT' variable = (current * 100) / max - if variable > 90: - if self.hascolors: - return self.if90pc_color - else: - return curses.A_REVERSE - elif variable > 70: - if self.hascolors: - return self.if70pc_color - else: - return curses.A_BOLD - elif variable > 50: - if self.hascolors: - return self.if50pc_color - else: - return curses.A_DIM - else: - if self.hascolors: - return self.default_color - else: - return 0 + if variable > limits.getSTDCritical(): + return 'CRITICAL' + elif variable > limits.getSTDWarning(): + return 'WARNING' + elif variable > limits.getSTDCareful(): + return 'CAREFUL' + + return 'OK' + + + def __getColor(self, current = 0, max = 100): + return self.__colors_list[self.__getAlert(current, max)] + + + def __getCpuAlert(self, current = 0, max = 100): + return self.__getAlert(current, max) + + + def __getCpuColor(self, current = 0, max = 100): + return self.__getColor(current, max) + + + def __getLoadAlert(self, current = 0, core = 1): + # If current < CAREFUL*core of max then alert = OK + # If current > CAREFUL*core of max then alert = CAREFUL + # If current > WARNING*core of max then alert = WARNING + # If current > CRITICAL*core of max then alert = CRITICAL + + if current > limits.getLOADCritical(core): + return 'CRITICAL' + elif current > limits.getLOADWarning(core): + return 'WARNING' + elif current > limits.getLOADCareful(core): + return 'CAREFUL' + + return 'OK' def __getLoadColor(self, current = 0, core = 1): - # core is the number of CPU core - # If current > 0.7*core then color = self.if50pc_color / A_DIM - # If current > 1.0*core then color = self.if70pc_color / A_BOLD - # If current > 5.0*core then color = self.if90pc_color / A_REVERSE - # By default: color = self.default_color / 0 - - if current > (5.0 * core): - if self.hascolors: - return self.if90pc_color - else: - return curses.A_REVERSE - elif current > (1.0 * core): - if self.hascolors: - return self.if70pc_color - else: - return curses.A_BOLD - elif current > (0.7 * core): - if self.hascolors: - return self.if50pc_color - else: - return curses.A_DIM - else: - if self.hascolors: - return self.default_color - else: - return 0 + return self.__colors_list[self.__getLoadAlert(current, core)] + def __getMemAlert(self, current = 0, max = 100): + return self.__getAlert(current, max) + + + def __getMemColor(self, current = 0, max = 100): + return self.__getColor(current, max) + + + def __getNetColor(self, current = 0, max = 100): + return self.__getColor(current, max) + + + def __getFsColor(self, current = 0, max = 100): + return self.__getColor(current, max) + + def __catchKey(self): # Get key self.pressedkey = self.term_window.getch(); @@ -504,6 +665,9 @@ class glancesScreen(): self.showHelp() else: self.hideHelp() + elif (self.pressedkey == 108): + # 'l' > Enable/Disable logs list + self.log_tag = not self.log_tag elif (self.pressedkey == 109): # 'm' > Sort process list by Mem usage self.setProcessSortedBy('proc_size') @@ -530,8 +694,9 @@ class glancesScreen(): self.displayMem(stats.getMem(), stats.getMemSwap()) network_count = self.displayNetwork(stats.getNetwork(), stats.getNetworkInterface()) diskio_count = self.displayDiskIO(stats.getDiskIO(), self.network_y + network_count) - self.displayFs(stats.getFs(), self.network_y + network_count + diskio_count) - self.displayProcess(stats.getProcessCount(), stats.getProcessList(screen.getProcessSortedBy())) + fs_count = self.displayFs(stats.getFs(), self.network_y + network_count + diskio_count) + log_count = self.displayLog(self.network_y + network_count + diskio_count + fs_count) + self.displayProcess(stats.getProcessCount(), stats.getProcessList(screen.getProcessSortedBy()), log_count) self.displayCaption() self.displayNow(stats.getNow()) @@ -580,11 +745,11 @@ class glancesScreen(): helpWindow.resize(self.term_h-self.help_y-2, self.term_w-self.help_x) helpWindow.clear() msg = _("Glances help (press 'h' to hide)") - helpWindow.addnstr(1, 2,_("'h'\tto display|hide this help message"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) - helpWindow.addnstr(2, 2,_("'a'\tto sort processes automatically"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) - helpWindow.addnstr(3, 2, _("'c'\tto sort processes by CPU consumption"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) - helpWindow.addnstr(4, 2, _("'d'\tto disable|enable the disk IO stats"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) - helpWindow.addnstr(5, 2, _("'f'\tto disable|enable the file system stats"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) + helpWindow.addnstr(1, 2, _("'a'\tto sort processes automatically"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) + helpWindow.addnstr(2, 2, _("'c'\tto sort processes by CPU consumption"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) + helpWindow.addnstr(3, 2, _("'d'\tto disable|enable the disk IO stats"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) + helpWindow.addnstr(4, 2, _("'f'\tto disable|enable the file system stats"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) + helpWindow.addnstr(5, 2, _("'l'\tto display|hide the logs messages"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) helpWindow.addnstr(6, 2, _("'m'\tto sort processes by process size"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) helpWindow.addnstr(7, 2, _("'n'\tto disable|enable the network interfaces stats"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) helpWindow.addnstr(8, 2, _("'q'\tto exit Glances"), self.term_w-self.help_x-4, self.help_color if self.hascolors else 0) @@ -643,9 +808,19 @@ class glancesScreen(): self.term_window.addnstr(self.cpu_y+2, self.cpu_x, _("Kernel:"), 8) self.term_window.addnstr(self.cpu_y+3, self.cpu_x, _("Nice:"), 8) self.term_window.addnstr(self.cpu_y+4, self.cpu_x, _("Idle:"), 8) - self.term_window.addnstr(self.cpu_y+1, self.cpu_x+10, "%.1f" % cpu['user'], 8, self.__getColor(cpu['user'])) - self.term_window.addnstr(self.cpu_y+2, self.cpu_x+10, "%.1f" % cpu['kernel'], 8, self.__getColor(cpu['kernel'])) - self.term_window.addnstr(self.cpu_y+3, self.cpu_x+10, "%.1f" % cpu['nice'], 8, self.__getColor(cpu['nice'])) + + alert = self.__getCpuAlert(cpu['user']) + logs.add(alert, "CPU user", cpu['user']) + self.term_window.addnstr(self.cpu_y+1, self.cpu_x+10, "%.1f" % cpu['user'], 8, self.__colors_list[alert]) + + alert = self.__getCpuAlert(cpu['kernel']) + logs.add(alert, "CPU kernel", cpu['kernel']) + self.term_window.addnstr(self.cpu_y+2, self.cpu_x+10, "%.1f" % cpu['kernel'], 8, self.__colors_list[alert]) + + alert = self.__getCpuAlert(cpu['nice']) + logs.add(alert, "CPU nice", cpu['nice']) + self.term_window.addnstr(self.cpu_y+3, self.cpu_x+10, "%.1f" % cpu['nice'], 8, self.__colors_list[alert]) + self.term_window.addnstr(self.cpu_y+4, self.cpu_x+10, "%.1f" % cpu['idle'], 8) @@ -662,9 +837,16 @@ class glancesScreen(): self.term_window.addnstr(self.load_y+1, self.load_x, _("1 min:"), 8) self.term_window.addnstr(self.load_y+2, self.load_x, _("5 mins:"), 8) self.term_window.addnstr(self.load_y+3, self.load_x, _("15 mins:"), 8) + self.term_window.addnstr(self.load_y+1, self.load_x+10, str(load['min1']), 8) - self.term_window.addnstr(self.load_y+2, self.load_x+10, str(load['min5']), 8, self.__getLoadColor(load['min5'], core)) - self.term_window.addnstr(self.load_y+3, self.load_x+10, str(load['min15']), 8, self.__getLoadColor(load['min15'], core)) + + alert = self.__getLoadAlert(load['min5'], core) + logs.add(alert, "LOAD 5-mins", load['min5']) + self.term_window.addnstr(self.load_y+2, self.load_x+10, str(load['min5']), 8, self.__colors_list[alert]) + + alert = self.__getLoadAlert(load['min15'], core) + logs.add(alert, "LOAD 15-mins", load['min15']) + self.term_window.addnstr(self.load_y+3, self.load_x+10, str(load['min15']), 8, self.__colors_list[alert]) def displayMem(self, mem, memswap): @@ -682,14 +864,21 @@ class glancesScreen(): self.term_window.addnstr(self.mem_y+1, self.mem_x, _("Total:"), 8) self.term_window.addnstr(self.mem_y+2, self.mem_x, _("Used:"), 8) self.term_window.addnstr(self.mem_y+3, self.mem_x, _("Free:"), 8) + self.term_window.addnstr(self.mem_y+1, self.mem_x+10, str(mem['total']/1048576), 8) self.term_window.addnstr(self.mem_y+2, self.mem_x+10, str(mem['used']/1048576), 8) self.term_window.addnstr(self.mem_y+3, self.mem_x+10, str(mem['free']/1048576), 8) + + alert = self.__getMemAlert(memswap['used'], memswap['total']) + logs.add(alert, "MEM swap", memswap['used']/1048576) self.term_window.addnstr(self.mem_y+1, self.mem_x+20, str(memswap['total']/1048576), 8) - self.term_window.addnstr(self.mem_y+2, self.mem_x+20, str(memswap['used']/1048576), 8, self.__getColor(memswap['used'], memswap['total'])) + self.term_window.addnstr(self.mem_y+2, self.mem_x+20, str(memswap['used']/1048576), 8, self.__colors_list[alert]) self.term_window.addnstr(self.mem_y+3, self.mem_x+20, str(memswap['free']/1048576), 8) + + alert = self.__getMemAlert(mem['used']-mem['cache'], mem['total']) + logs.add(alert, "MEM real", (mem['used']-mem['cache'])/1048576) self.term_window.addnstr(self.mem_y+1, self.mem_x+30, "-", 8) - self.term_window.addnstr(self.mem_y+2, self.mem_x+30, str((mem['used']-mem['cache'])/1048576), 8, self.__getColor(mem['used']-mem['cache'], mem['total'])) + self.term_window.addnstr(self.mem_y+2, self.mem_x+30, str((mem['used']-mem['cache'])/1048576), 8, self.__colors_list[alert]) self.term_window.addnstr(self.mem_y+3, self.mem_x+30, str((mem['free']+mem['cache'])/1048576), 8) @@ -727,8 +916,8 @@ class glancesScreen(): break elapsed_time = max (1, network[i]['systime']) self.term_window.addnstr(self.network_y+1+i, self.network_x, network[i]['interface_name']+':', 8) - self.term_window.addnstr(self.network_y+1+i, self.network_x+10, self.__autoUnit(network[i]['rx']/elapsed_time*8) + "b", 8, self.__getColor(network[i]['rx']/elapsed_time*8, speed[network[i]['interface_name']])) - self.term_window.addnstr(self.network_y+1+i, self.network_x+20, self.__autoUnit(network[i]['tx']/elapsed_time*8) + "b", 8, self.__getColor(network[i]['tx']/elapsed_time*8, speed[network[i]['interface_name']])) + self.term_window.addnstr(self.network_y+1+i, self.network_x+10, self.__autoUnit(network[i]['rx']/elapsed_time*8) + "b", 8, self.__getNetColor(network[i]['rx']/elapsed_time*8, speed[network[i]['interface_name']])) + self.term_window.addnstr(self.network_y+1+i, self.network_x+20, self.__autoUnit(network[i]['tx']/elapsed_time*8) + "b", 8, self.__getNetColor(network[i]['tx']/elapsed_time*8, speed[network[i]['interface_name']])) ret = ret + 1 return ret return 0 @@ -774,12 +963,47 @@ class glancesScreen(): for mounted in range(0, min(screen_y-self.fs_y-3, len(fs))): self.term_window.addnstr(self.fs_y+1+mounted, self.fs_x, fs[mounted]['mnt_point'], 8) self.term_window.addnstr(self.fs_y+1+mounted, self.fs_x+10, self.__autoUnit(fs[mounted]['size']), 8) - self.term_window.addnstr(self.fs_y+1+mounted, self.fs_x+20, self.__autoUnit(fs[mounted]['used']), 8, self.__getColor(fs[mounted]['used'], fs[mounted]['size'])) + self.term_window.addnstr(self.fs_y+1+mounted, self.fs_x+20, self.__autoUnit(fs[mounted]['used']), 8, self.__getFsColor(fs[mounted]['used'], fs[mounted]['size'])) return mounted+3 return 0 - def displayProcess(self, processcount, processlist): + def displayLog(self, offset_y = 0): + # Logs + if ((logs.len() == 0) or not self.log_tag): + return 0 + screen_x = self.screen.getmaxyx()[1] + screen_y = self.screen.getmaxyx()[0] + self.log_y = offset_y + if ((screen_y > self.log_y+3) + and (screen_x > self.log_x+79)): + self.log_y = max(offset_y, screen_y-3-min(offset_y-3, screen_y-self.log_y, logs.len())) + logtodisplay_count = min(screen_y-self.log_y-3, logs.len()) + logmsg = _("Warning and Critical logs for CPU|LOAD|MEM") + if (logtodisplay_count > 1): + logmsg += _(" (lasts ") + str(logtodisplay_count) + _(" entries)") + else: + logmsg += _(" (one entry)") + self.term_window.addnstr(self.log_y, self.log_x, logmsg, 79, self.title_color if self.hascolors else curses.A_UNDERLINE) + # Adapt the maximum log to the screen + logcount = 0 + log = logs.get() + for logcount in range(0, logtodisplay_count): + logmsg = " "+str(datetime.datetime.fromtimestamp(log[logcount][0])) + if (log[logcount][1] > 0): + logmark = ' ' + logmsg += " > " +str(datetime.datetime.fromtimestamp(log[logcount][1])) + else: + logmark = '~' + logmsg += " > " +"%19s" % "___________________" + logmsg += " " +log[logcount][3] + " (%.1f/" % log[logcount][6] + "%.1f/" % log[logcount][5] + "%.1f)" % log[logcount][4] + self.term_window.addnstr(self.log_y+1+logcount, self.log_x, logmsg, 79) + self.term_window.addnstr(self.log_y+1+logcount, self.log_x, logmark, 1, self.__colors_list[log[logcount][2]]) + return logcount+3 + return 0 + + + def displayProcess(self, processcount, processlist, log_count = 0): # Process if (not processcount or not processlist): return 0 @@ -821,7 +1045,7 @@ class glancesScreen(): self.term_window.addnstr(self.process_y+3, process_x+10,_("Size MB")+sortchar, 8) self.term_window.addnstr(self.process_y+3, process_x+20,_("Res MB"), 8) self.term_window.addnstr(self.process_y+3, process_x+30,_("Name"), 8) - for processes in range(0, min(screen_y-self.term_h+self.process_y, len(processlist))): + for processes in range(0, min(screen_y-self.term_h+self.process_y-log_count, len(processlist))): self.term_window.addnstr(self.process_y+4+processes, process_x, "%.1f" % processlist[processes]['cpu_percent'], 8, self.__getColor(processlist[processes]['cpu_percent'])) self.term_window.addnstr(self.process_y+4+processes, process_x+10, str((processlist[processes]['proc_size'])/1048576), 8) self.term_window.addnstr(self.process_y+4+processes, process_x+20, str((processlist[processes]['proc_resident'])/1048576), 8) @@ -842,9 +1066,9 @@ class glancesScreen(): if ((screen_y > self.caption_y) and (screen_x > self.caption_x+32)): self.term_window.addnstr(max(self.caption_y, screen_y-1), self.caption_x, _(" OK "), 8, self.default_color) - self.term_window.addnstr(max(self.caption_y, screen_y-1), self.caption_x+8, _("CAREFUL "), 8, self.if50pc_color) - self.term_window.addnstr(max(self.caption_y, screen_y-1), self.caption_x+16, _("WARNING "), 8, self.if70pc_color) - self.term_window.addnstr(max(self.caption_y, screen_y-1), self.caption_x+24, _("CRITICAL"), 8, self.if90pc_color) + self.term_window.addnstr(max(self.caption_y, screen_y-1), self.caption_x+8, _("CAREFUL "), 8, self.ifCAREFUL_color) + self.term_window.addnstr(max(self.caption_y, screen_y-1), self.caption_x+16, _("WARNING "), 8, self.ifWARNING_color) + self.term_window.addnstr(max(self.caption_y, screen_y-1), self.caption_x+24, _("CRITICAL"), 8, self.ifCRITICAL_color) def displayNow(self, now): @@ -880,6 +1104,7 @@ def printSyntax(): print _("'d' to disable or enable the disk IO stats") print _("'f' to disable or enable the file system stats") print _("'h' to hide or show the help message") + print _("'l' to hide or show the logs messages") print _("'m' to sort the processes list by process size") print _("'n' to disable or enable the network interfaces stats") print _("'q' to exit") @@ -887,7 +1112,7 @@ def printSyntax(): def init(): - global stats, screen + global limits, logs, stats, screen global refresh_time refresh_time = 1 @@ -917,6 +1142,12 @@ def init(): # Catch CTRL-C signal.signal(signal.SIGINT, signal_handler) + # Init Limits + limits = glancesLimits() + + # Init Logs + logs = glancesLogs() + # Init stats stats = glancesStats() @@ -925,6 +1156,7 @@ def init(): def main(): + # Init stuff init() @@ -940,6 +1172,7 @@ def main(): def end(): stats.end() screen.end() + sys.exit(0) -- GitLab