-
-
-
-
-
-
-
-
-
-
1: Overview
SLmon is a tool for monitoring system's performance. It displays results
using nice and (hopefully) readable text-based UI. Currently monitored
are:
- CPU load (SMP is supported)
- network interfaces
- memory (including swap)
- uptime, date and time
- number of logged in users
- mounted filesystems
- processes
2: Technical info
SLmon uses glibtop version >= 2 and libslang version >= 1.2.2
(this version however has a bug that makes it impossible to write a
character in lower right corner, but otherwise it works okay).
Starting with 0.5.13 Glib library is needed.
3: Invoking
- -v, --version
- Display version and copying and exit
- -h, --help
- Display brief usage information
- -f, --fs-unit=[kmg]
- Specify filesystem usage unit, where: b=bytes,
k=kbytes, m=mbytes, g=gbytes
- -m, --mem-unit=[bkmg]
- Specify memory usage unit, where: b=bytes,
k=kbytes, m=mbytes, g=gbytes
- -n, --net-unit=[bkmg]
- Specify network traffic unit, where: b=bytes,
k=kbytes, m=mbytes, g=gbytes
- -d, --mode=[mpnh]
- Start in mode 'M' where: m=main, p=process, n=network, h=histogram
- -u, --update=<seconds>
- Specify update interval in seconds
4: Usage
All modes:
- q
- Quit
- m
- Main mode.
- p
- Processes mode.
- n
- Network mode.
- h
- Histogram mode.
- ?
- Help screen.
Main mode:
- u
- Change memory usage unit.
- U
- Change filesystems usage unit.
- -
- Increace gauge length.
- =
- Decreace gauge length.
- up
- Scroll fileststems up.
- down
- Scroll fileststems down.
Histogram mode:
- h
- Cycle through histogram modes.
- -
- Decrease horizontal size of the graph.
- =
- Increase horizontal size of the graph.
- _
- Decrease vertical size of the graph.
- +
- Increase vertical size of the graph.
Network mode:
- u
- Change network traffic unit.
- n
- Add new interface.
- d
- Delete existing interface.
- up
- Scroll list up.
- down
- Scroll list down.
Processes mode:
- k
- Send SIGTERM (15) to highlighted process. USE WITH CARE!
- K
- Send specified signal to highlighted process. USE WITH CARE!
- a
- Sort processes by pid descending.
- A
- Sort processes by pid ascending.
- s
- Sort processes by cpu percentage descending.
- S
- Sort processes by cpu percentage ascending.
- d
- Sort processes by memory percentage descending.
- D
- Sort processes by memory percentage ascending.
- f
- Sort processes by user name descending.
- F
- Sort processes by user name ascending.
- up
- Scroll list up.
- down
- Scroll list down.
- page up
- Scroll list up by 10.
- page down
- Scroll list down by 10.
5: Configuration files
SLmon looks for the configuration file in the following locations:
- /etc/slmonrc
-
- /usr/local/etc/slmonrc
- if the previous one fails
- $HOME/.slmonrc
-
Options can be specified in the form of pairs: <key> = <value>. Lines
beginning with '#' are treated as comments (note: all leading whitespaces are
stripped). All subsequent definitions of a certain option overwrite previous
declarations except for the net_dev option.
Available options (more to come :)):
- mode
- Start certain mode: m=main, p=process, n=network, h=histogram.
- mem_unit
- Specify memory usage unit [bkm].
- fs_unit
- Specify filesystem usage unit [kmg].
- net_unit
- Specify network traffic unit [bkmg].
- net_dev
- Add a network interface to list of monitored interfaces.
- update_time
- Specify update interval in seconds.
6: Problems
- slmon uses too much cpu time in process mode
Please send all bugreports to m00se@iq.pl.
7: Thanks
The author wishes to thank following people for help in developing SLmon:
- Martijn Pieterse and Antoine Nulle
- authors of the wmmon.app.
- Piotr 'xlizee' Kazmierczak
- betatesting, suggestions and screenshot.
- Marcin 'dombal' Dabrowski
- betatesting.
- Dan Bilik
- patch fixing incorrect count of AMD K6 CPUs and some suggestions.
- Kacper Pleszkun
- betatesting, bugreports.
- Alexander Reelsen
- Debian Potato packages.
- Alan Ford
- Debian Woody packages.
- Edward Betts
- bugreports.
- Gabor Z. Papp
- bugreports.
- Mario Vanoni
- suggestions and lots of bugreports.
- Tim Powers
- RPM packages.
8: Download
SLmon home page http://slmon.sourceforge.net
Download:
- Libgtop
- ftp://ftp.gnome.org/pub/GNOME/stable/sources/libgtop/
- S-Lang
- ftp://space.mit.edu/pub/davis/slang/
9: Changes
- 0.5.13 - 24 06 2004
- Updated to compile with latest libgtop, value
overflows in network mode fixes, other cleanups (patches by Benoit Dejean).
Glib is now required.
- 0.5.12 - 01 10 2002
- Configure fixes (should compile cleanly on systems
without GNOME). Use inet_ntoa() when inet_ntop() is unavailable. Documentation
updates.
- 0.5.11 - 05 07 2002
- Fixed detection of LibGTop2, some code cleanups.
- 0.5.10 - 03 07 2002
- Added (experimental) display of network transmission
speed per second. Fixed small display bug.
- 0.5.9 - 01 04 2002
- Configurable update time, scrolling in network mode,
fixed gnome-terminal transparency problems, fixes in configure.in.
- 0.5.8 - 29 11 2001
- Updated help screen. Only interfaces which are
up are displayed, added flags to information about interfaces.
- 0.5.7 - 28 11 2001
- Bugfixes: incorrect URL in documentation, disapearing
status lines, duplicate network interfaces.
- 0.5.6 - 12 11 2001
- It is now possible to sort processes by pid, pcpu,
pmem and username both ascending and descending. It's also possible to
send an arbitrary signal to specified process.
- 0.5.5 - 05 11 2001
- Added online help, fixed a bug where slmon would
crash when there were no network interfaces specified. New keyboard
mapping for changing modes.
- 0.5.4 - 25 10 2001
- Bugfixes in network traffic display. Added sample
slmonrc to distribution. New format of command line options.
- 0.5.3 - 23 10 2001
- Updated documentation, new commandline switches.
- 0.5.2 - 22 10 2001
- Added network interface monitoring mode and support
for configuration files.
- 0.5.1 - 09 09 2001
- %CPU and %MEM display works now, reintroduced long
options, support for Linux /proc filesystem has been discontinued.
- 0.5.0 - 02 09 2001
- Added ability to monitor running processes and mounted
filesystems , switched from popt to getopt, keyboard handling was rewritten,
minor bugfixes and code cleanups.
- 0.4.1 - 21 02 2001
- Fixed several typos, added basic debian package
support.
- 0.4.0 - 20 11 2000
- One silly spelling mistake has been fixed (thanks to
Tim Powers). There are no longer compilation errors when popt.h is not
present. On gauge display changed %03d%% to %3d%% i.e. 004% will be
displayed as 4%.
- 0.3.7 - 04 11 2000
- SLmon can now use getopt instead of popt for parsing
command line options. A bug in options parsing has been fixed. Texinfo
documentation is no longer available.
- 0.3.6 - 02 11 2000
- Bug in cpu counting have been fixed.
- 0.3.5 - 29 10 2000
- Added posibility to compile slmon on Linux without
libgtop. Documentation updates.
- 0.3.4 - 21 10 2000
- CPU naming starts now from zero, on machines with one
CPU only 'total cpu usage' is displayed. Fixed display error on machines with
more than 1GB of memory.
- 0.3.3 - 12 10 2000
- Minor bugfixes and cleanups, option to turn off bold
on monochrome terminals.
- 0.3.2 - 08 10 2000
- Improvements to configure script, incereased compile
time configureability. Minor code cleanups.
- 0.3.1 - 18 09 2000
- Major rewrite. Due to compatibility problems support
for libproc has been discontiniued. SLmon now uses glibtop for gathering
system specific information and should run on any UN*X system that has glibtop
installed.
- 0.3.0 - 11 07 2000
- Many changes: SLmon now uses libproc and popt, added
commandline options and customizable colors (from commandline only for now).
Added possibility to make command aliases. Added autoconf and automake
support.
- 0.2.5 - 26 04 2000
- Bugfix release. Slmon now looks much beter on
monochrome terminals, also Makefile has been optimized.
- 0.2.4 - 15 04 2000
- SLmon won't crash when it can't access /proc, changed
the histogram mode screen layout a bit. It it now possible to draw histogram
for specified processor or overall usage. Also number of logged in users is
shown on the status line. Fixed a bug in RH patch.
- 0.2.3 - 10 04 2000
- Added load average, OS and machine information.
- 0.2.2 - 06 04 2000
- Fixed bug in CPU counting procedure and another one
in free swap display. Added days to uptime display.
- 0.2.1 - 01 04 2000
- Added memory load, all basic signals should be now
handled properly.
- 0.2.0 - 26 03 2000
- Gauge color scheme changed. Runtime mode switching
works now.
- 0.1.9 - 20 03 2000
- Added new graph mode - color gauge.
- 0.1.8 - 11 03 2000
- Added SIGWINCH handling, hope it'll work :) also
bottom status line has changed a bit.
- 0.1.7 - 27 02 2000
- The program now correctly recognizes terminal size.
- 0.1.6 - 26 02 2000
- Added graph, keyboard support, graph parameters
are hardcoded.
- 0.1.5 - 25 02 2000
- Multiple CPUs, status lines, date, time, uptime,
hostname, processsor name.
- 0.1.0 - 24 02 2000
- Initial version, one cpu.
10: Copying
Copyright (C) 2000, 2001, 2002 Krzysztof Luks <m00se@iq.pl>.
This program is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public
License as published by the Free Software Foundation;
either version 2 of the License, or (at your option) any
later version.
This program is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the GNU General Public License for more
details.
You should have received a copy of the GNU General Public
License along with this program; if not, write to the Free
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA
02139, USA.