Dashing widget to show Internet bandwidth usage

Our network guy likes to regularly check on the company's overall network usage. It's a bit of a tic of his, but those sorts of checks are a good way to see if something has gone sideways and is gobbling up our network even before users complain about a problem.

This widget now lets us all get that same information just at a glance. No more logging onto the ASA to see how it's doing, and now we get the info simply at a glance.

One of the two graphs: our internet usage over the last five minutes.

One of the two graphs: our internet usage over the last five minutes.

In all, four widgets are created with this job:

  • inbound_bandwidth: simply a number of the current bandwidth usage (good for a maxmeter)
  • outbound_bandwidth: the same as inbound_bandwidth, but for outbound data.
  • bandwidth_short: bandwidth (in and out) over the last five minutes
  • bandwidth_long: bandwidth (in and out) over the last eight hours

The two graphable data sets are best served with the rickshaw graph (that's what I'm using, here), but any other graph able to read similar data could produce something for you.

It's still fairly early in the day here...

It's still fairly early in the day here...

In the end, you'll need to change some of the settings in there (IP address and community names need to be set to legitimate things), and the timing can be changed to what you want, but this can be used fairly directly if you want a simple view of your overall bandwidth.

Update: Our dashboard itself (the erb file) entries to display this data look like this:

<li data-row="2" data-col="4" data-sizex="3" data-sizey="1">
<div data-id="bandwidth_long_smooth" data-view="Rickshawgraph" data-suffix="M" data-unstack="true" data-renderer="line" data-legend="true" data-min="0" data-max="350" data-title="Bandwidth (8 hr)"></div>

<li data-row="3" data-col="4" data-sizex="3" data-sizey="1">
<div data-id="bandwidth_short" data-legend="true" data-view="Rickshawgraph" data-renderer="line" data-suffix="M" data-unstack="true" data-min="0" data-max="350" data-title="Bandwidth (5 min)"></div>