Colgui

Introduction

This utility was initially developed for testing collectl's socket communications code and for becoming more familiar with perl-Tk. What it does, it does reasonably well but given the overhead of having to manually draw all the graphics with Tk, a better solution might be a reimplementation in java or perhaps some other graphics language. If anyone wants to raise their hand and develop such a tool, I'd be very supportive of the effort.

One known limitation of colgui is that by having to manually build the plots and also trying to keep things somewhat simple, all the plots have a fixed y-axis limit controlled by the plots definition file. In some cases like network interfaces or memory, colgui can determine the limits at startup. While this works for most situations this a problem for devices with unknown limits such as storage arrays which can range in limits from under 100MB/sec to well over 1GB/sec and there is no way to know what the limits are. Therefore one will have to customize the definitions file with values appropriate to your system if you care about these numbers. One more good reason for a reimplemantation.

Using Colgui

The main philosopy behind colgui is to allow someone to use the same types of switches as collectl to select their graphics and intervals, so the command colgui -scn -i2 will display both cpu and network graphics every 2 seconds for the specified systems. The plots it displays are actually driven off the same plot definitions file that colplot uses and so if you want to select one or more specific plots by name you can still do so with -p plotname(s) or even define your own plots. Both -s and -p can be mixed with the same command. If you don't specify any switches, like collectl you'll get the default behavior of colgui -scdn -i1 as seen here:

You should note a couple of things:

Colgui will start a new row of plots for each system but will also limit the number of plots on a specific row so a system's plots may actually take multiple rows. If you want more than 3 plots on a single row you can change this with -r.

Geometry
Like collectl, colgui tries to maximuze the use of the display real estate, which can be critical when a lot of data is being requested either for multiple plots, systems or both and so introduces the notion of a geometry of which there are 4:

In any event feel free to experiment with different plot geometries and plot dimensions noting if a particular feature you're looking for doesn't exist it probably won't be added as I'm not really putting any cycles into enhancing this utility. For more information about colgui be sure to see the man page and try the --helpadvanced switch as not all switches are shown by default.

updated Oct 8, 2009