Cacti (home)ForumsDocumentation

This is an old revision of the document!


This plugin aggregates graphs from Graph Management. It is merged into Cacti 1.x.
GPL v2


0.70 B2Version 0.70 B2 Feature: Support for Totalling, either for similar or all data sources.
This feature will automatically create any needed CDEF by replacing CURRENT_DATA_SOURCE by either SIMILAR_DATA_SOURCES_NODUPS or ALL_DATA_SOURCES_NODUPS. But it first searches for any existing CDEF that matches! Those autocreated CDEFs will be named AGGREGATE SIMILAR <old CDEF name> or AGGREGATE ALL <old CDEF name>
Feature: Allow for all |host_*| variables in AGGREGATE graph items
Feature: remove unwanted |query_*| and |host_*| stuff from graph titles, not making sense on AGGREGATES, e.g. Aggregate |host_description| - Traffic - |query_ifName| will turn to Aggregate - Traffic. This will be displayed before graph is created.
Feature: Do not ask for <HR> settings, compute them!
If an item with <HR> is skipped, set <HR> on previous item. Always set <HR> on last item of graph, so next graph starts “fresh”
Bug Fix: “Assigning the return value of new by reference is deprecated”
is a PHP5 compatibility issue.
Error Handler was changed to cope with this
Bug Fix: Cleanup of code for creating the main graph structures
Bug Fix: If Graphs based on different Graph Templates are used, drop an error e.g. aggregating
- standard traffic
- 95th percentile
- bandwidth traffic
will result in weird graphs. We will dop an error here, advising, that a single graph template is required for aggregation (To complete error handling, graphs.php needs a change)
Tweak: Split up setup.php code. It contains plugin stuff only, now Aggregate functions have been moved to aggregate.php
Tweak: Input Field Validation reworked
Tweak: Form Layout now matches standard Cacti Form Layout
0.71 Version 0.71Bug Fix: setup.php throws errors due to missing table keys
Bug Fix: Allow ”/” in title, e.g. for ”/dev/sda1”
Bug Fix: Disconnect aggregate graph items from graph template items, thus avoiding messing up aggregates when changing the “base” graph template
0.73 Version 0.73Bug Fix: pass graph actions to next plugin in queue
Bug Fix: lot of html cleanup
Feature: Support sort order, especially required if base graph is AREA/STACK type
PDF: Complete Howto
0.74 Version 0.74Bug Fix: color templates were broken
Bug Fix: formatting of elements on the confirmation page fixed (unordered list)
Feature: enhanced upgrade procedure will smoothly upgrade without loosing existing color templates
0.75 Version 0.75Bug Fix: better index checking for color items
Bug Fix: html validation errors fixed
Bug Fix: xss vulnerabilities fixed
Compat: use buttons on action confirmation
Compat: compatibility with PIA 2.8
Feature: Allow colors to rotate
Feature: “Total only” implemented
Feature: convert to all available LINEx graph item types
Feature: custom prefix on total GPRINTs
Feature: much more sophisticated graph item type conversion
Feature: support for |query_*| substitution on data query graphs
PDF: Complete HowTo, including lots of examples


Please note that this plugin has been merged into the base of Cacti 1.x on GitHub. Older versions of this plugin are maintained here for reference only.

This plugin aggregates graphs from Graph Management. All data you want to see must already be present on any existing graphs.

There are two main version families of this plugin. The version 0.7x versions do not provide the ability to create aggregate templates while the 1.x version of the plugin do allow for this method of creating the aggregates.


  1. Aggregates existing Graphs into a single Aggregate Graph, keeping the sequence of selected Graphs and of the Graph Items within theses Graphs.
  2. Provides a new Graph Title for the Aggregate.
  3. Prepends all legend items with an optional text.
  4. Provides an algorithm to add additional <HR> linebreaks. This prevents ugly formatting.
  5. Allows for converting into AREA/STACK or LINE1 graphs
  6. Displays a list of Graph Items (taken from the first Graph selected) to allow for skipping selected graph items
  7. Allows for Totaling, either SIMILAR or ALL data sources
  8. Totaling only now supported
  9. Defines “Color Templates”. These define a list of colors, e.g. light red to dark red. Allows to associate colored Graph Items to a Color Template. By doing so, Graph Items of same data source will no longer show the same color but instead will be colorized according to the Color Template


  1. Cacti 0.8.6i or Above. Versions of Cacti prior to 0.8.6 are not supported.
  2. Cacti 0.8.6x versions requires Plugin Architecture V1.1.
  3. Cacti 0.8.7x requires Plugin Architecture V2.x.
  4. latest AGGREGATE v0.75 tested with Cacti 0.8.7g and PIA 2.8 only


  • Cacti 0.8.6x / Plugin Architecture 1.1:
    Please change ./include/config.php to add this plugin as usual
  • Cacti 0.8.7x / Plugin Architecture V2.x:
    Please use Plugin Management to install and enable the plugin

Accessing AGGREGATE Color Templates must be enabled on a per-user-base from User Management

Using the Aggregate function is granted to all users having Console access.


This plugin adds a new dropdown action to Graph Management, called “Create Aggregate Graphs”. To use it, please filter the graphs you want to aggregate and select all of those you want to be aggregated. The topmost one serves as a “template” for the basic graph properties.

If you like to aggregate graphs of different type (e.g. a traffic graph and a graph showing the numbers of logged in users), no one will stop you doing so. But in case you want to interpret the data, this will be left to you. So, better aggregate graphs of same graph template.

Be aware: If the basic graphs include e.g. AREA/STACK graph items, those will overlap on the aggregate. Please select the option “Make it an AREA/STACK Graph”, and the plugin will take care for it. Alternatively, by checking “Make it a LINE1 Graph”, all AREA/STACKs are converted to LINE1. If the basic graphs include “Totals”, the aggregate will include those as well. It may not make that much sense to include several “Totals”; so you may want to delete some of them.

If the basic graph includes “COMMENTS”, you may want to delete some of them as well. This is supported by checking the “Skip” checkboxes for those Graph Items.

Graph templates may omit <HR> line breaks for the last graph item. You will want to provide those by checking the <HR> checkbox. This may come in useful as well when deleting special graph items in the middle of a graph templatre that carry a <HR>. If you skip those items, ugly formatting would be the result. To prevent this, mark the previous graph item with <HR>

In general, colors of graph items from different graphs will be equal. You will want to change colors to make the aggregate better readable.

This plugin supports re-colorization by means of “Color Templates”. Color Templates are a list of different colors. Selecting a Color Template for a colorized Graph Item from the dropdown selection list will associate this Graph Item with the color defined by the Color Template.

When aggregating, you will be prompted

  1. Title Format: Enter a new title for the Template.
  2. Graph Type: Select one of the following
    • Keep Graph Types - no changes to Graph Item Type
    • Make it an AREA/STACK Graph - create an AREA/STACK Graph
    • Make it a LINE1 Graph - convert to LINE1
  3. Graph Template Items
    • Select a given Color Template to change the color of a Graph Item
    • Select the ”<HR>” checkbox to set a linebreak for that graph item
    • Select the “Skip” checkbox to suppress this Graph Item for the Aggregate

Additional Help?

If you need additional help, please goto

Possible Bugs?

If you figure out this problem, let me know!!!



A walk through video for Aggregate 1.0 Beta by thewitness

Personal Tools