I know Zabbix handles numeric data in a way that it shows the absolute value for a given instant. But I have another type of data that accumulates over time (ie. number of bytes transmitted - not transmission rate).

When I am looking at a latest values -> graphs, I would like to see the sum of those values over a period of time. Example: when looking at a week chart, a pixel in the horizontal axis would be a period of 30 minutes. Instead of seeing the average number for the span of 30 minutes in each horizontal pixel I would like to see the sum of the values.

There is any way to do that?

Edit: The variable I am tracking is the number data items sent to a server. The values are sent to Zabbix (or to my current NMS) in a per request basis, so there is no defined period. In a minute Zabbix could receive a single report with the value 300, or 10 reports, each one with the value 20. What I want to show in the graph is the sum, 300 or 200 for each case respectively.


If you define a graph (as opposed to just clicking on an item and seeing the adhoc graph) you can specify that an item should be shown as its MAX value for the period represented by each pixel.

But if you are storing deltas (count per second) for things like traffic counters, printer page counters, etc., then you can also just use AVG and then do the following:

  1. When you want to know the total for a period of time, graph the item over that period using an adhoc graph
    • Look at the average over the period (printed on the graph), and then multiply by the number of seconds in the period
| improve this answer | |
  • Neither path will lead to what I am really trying to achieve. So I'll assume that Zabbix is not the right tool for me. – Jader Dias Mar 7 '10 at 13:48
  • I edited the question to clarify – Jader Dias Mar 7 '10 at 13:55

i might be misreading, but the question seemed weird.

so you have a counter (a metric that is constantly increasing - like bytes transmitted over a network interface or total amount of queries against a database).

so if you are querying this counter every 5 minutes, over a 30 minute period you might get values of 1, 2, 4, 6, 8, 13, 15. so summing them would get you 48 - which is a nonsense value :)

if your polling period would have been 10 minutes, over the same period you would get values 1, 4, 8, 15 - getting you a completely different value.

what i think you really wanted - to see difference between two points in time, so that counter values make sense.

depending on what you are monitoring and what you want to see, there are two possible options - you can set "store as" either to delta (which would store just the difference between two retrieved values), or "delta (speed per second)", which would show what the change per second was.

latter is the most widely used one, and it allows to grab - and properly graph - counters like network traffic, database queries per second and so on.

if i misunderstood your need, please, clarify the question and maybe give some real life example :)

| improve this answer | |
  • I edited the question to clarify – Jader Dias Mar 7 '10 at 13:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.