[ZBXNEXT-245] Provide Left and Right Axis Fixed Values for Graphs Created: 2010 Feb 20  Updated: 2022 Jan 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Patrick Hooper Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 46
Labels: flexibility, graphs, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix Graphs


Attachments: PNG File screenshot-1.png     Text File zabbix-frontend-axis-mysql-update.txt     File zabbix-frontend-axis.patch    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-569 Y axis MIN and MAX unique value for l... Closed
is duplicated by ZBXNEXT-1494 Dual scale graphs Closed
is duplicated by ZBXNEXT-1996 Allow Setting Y axis MIN / MAX on eac... Closed
Sub-task
part of ZBXNEXT-4588 New Graph Widget Closed

 Description   

Currently when you create a graph you have the ability to fix the Y min and Y max on a standard graph.

There are circumstances where I would like to display multiple item values from related data where the range of these data are very different, for example, receive level on a wireless link (range -30 to -90) and the transmit power on the same link (range +10 to +30).

If I use a the scale on a single axis the data would be very compressed and not very readable.

Using the above ranges of the two datasets, I would like to be able to set a fixed data range for the left axis and a fixed data range for the right access.

For example.
Left Axis - (min = -90, max = -30) - showing receive level
Right Axis - (min = +10, max = +30) - showing transmit power.

Having these two different scales for the left and right axis on the graph would make the data much more readable.



 Comments   
Comment by Nenad Opsenica [ 2011 Sep 19 ]

This would be very useful for one more purpose - grouping packet loss and RTT on the same graph.

Comment by Chris Kistner [ 2012 May 24 ]

I started to code this based on the 1.8.11 code base.

I have attached my php frondend code (zabbix-frontend-axis.patch), as well as an MySQL update (zabbix-frontend-axis-mysql-update.txt) to alter the graphs table so that my code can work.

Please just take note that I haven't touched any of the C code, which would mean that the Zabbix API calls won't be able to alter the right axis values yet.

I do hope that I've correctly modified the frontend code. I have applied it to our production Zabbix system and everything (creating graphs, modifying graphs, viewing graphs and exporting hosts) seemed OK.
Please let me know if I made mistakes or if I should provide C code fixes too.

Comment by richlv [ 2012 May 25 ]

what about importing ?
does import and export both correctly handle new values ?

as for c code, api is fully in php, but on the server side this might be needed in the network discovery/active agent auto-registration code - otherwise these features would not work properly.

of course, you don't have to do the c part, unless you are interested in those features

Comment by Chris Kistner [ 2012 May 27 ]

richlv:
I just exported and imported a host and the graph limits was successfully imported, so it seems like the importing is using the export class too.

I haven't tried importing/exporting between patched & unpatched versions though, but since it is XML, I suppose they'll just ignore the new values and use default values.

Comment by Marcus Oliveira [ 2012 Oct 31 ]

Hi guys.

Is it going to be deployed to any version of Zabbix ? 2.0.4 maybe ?

Marcus

Comment by Volker Fröhlich [ 2012 Oct 31 ]

That needs a database schema change and can therefore only go in 2.2 or a later major release. Also notice the tag "NMR" above, refering to that.

Comment by Marcus Oliveira [ 2012 Oct 31 ]

Thanks,

Hoping for 2.2, at least.

If I implement the proposed scripts, would it break anything (as far as you know, of cource) ?

I don't know what NMR means...

Thanks a lot.

Marcus

Comment by richlv [ 2012 Oct 31 ]

"need major release" or something like that

as for this feature, it's not planned currently (there's enough of other, financed features coming, though - some of them listed at https://www.zabbix.org/wiki/Docs/roadmap#Functional_roadmap )

Comment by Marcus Oliveira [ 2012 Oct 31 ]

Thanks a lot for the info.

Marcus

Comment by Chris Kistner [ 2012 Oct 31 ]

Marcus:
My change for adding the 2nd axis' configuration in Zabbix 1.8 was rather simple, but it took a couple of hours to implement it. I only appended columns to the existing database scheme. I only modified the web frontend code & schema with my patch.

You can probably look at my code when you want to do something similar to 2.0.4

Unfortunately I won't be making a patch for 2.0.4 soon, because the change over for my company from 1.8 to 2.0 would be too much effort since I've modified our 1.8 web frontend quite a bit!

Comment by Marcus Oliveira [ 2012 Nov 01 ]

Thanks a lot Chris.

Marcus

Comment by Marcus Oliveira [ 2012 Nov 01 ]

If I may, still in this subject... Maybe someone already told you that. Maybe a I have to create a new ticket.

If you guys are really going to make this option available. In the graph itself, I think it would be essential to the scales inherit the data/line's colors. (Or, at least, it should have a label showing whose data is that).

Marcus

Comment by richlv [ 2012 Nov 01 ]

that's an unrelated issue - ZBXNEXT-932

Comment by Raymond Kuiper [ 2013 Dec 06 ]

Just ran into the need for this as well.
I need to plot a state (integer ranging from 0 to 6) and a time measurement ranging from 0 ms to 5 seconds) on the same graph.
I'd really like to have a fixed scale for the state info, while the time measurement scale should be calculated.

Comment by Janne Korkkula [ 2014 Oct 20 ]

-''- ... Graphing item values on the left and utilization in percentage on the right - need to auto-scale the other and fix the percentage scale to 0-100.

Comment by Constantin Oshmyan [ 2015 Oct 16 ]

Just the same problem.

Example:

We monitor a disk space for some system, threshold in trigger is set as a percentage.
I'd like to have a graph for a disk space usage: in gigabytes and in percents, as well as a trigger threshold.
In theory, it is possible to use a single graph with two Y-axis (for gigabytes and for percents). However, really it is impossible due to different scales for these axis, so that datas are not matching.
It is possible to have 2 different graphs (see picture). However, the first graph has no percentage and threshold line, but the second one has no real numbers in gigabytes.
Just now it is impossible to set the scale for each Y-axe separately, this setting affects both axis simultaneously. But they have too different scale (otherwise there is no sense to use two Y-axis).

Comment by Daniel Bossert [ 2017 May 05 ]

Hello
Is there any timeline when this improvement will be done; it is a great feature!

Kind regards
Daniel

Comment by Wouter Schoot [ 2018 Mar 27 ]

I need the same, fixed on right Y axis, calculated on the left Y axis

Comment by Thomas Lobker [ 2019 May 05 ]

Another +1 here

This is absolutely necessary to combine anything dynamic (like bytes of free disk space) with a percentage. If you have bytes on the left and percentage on the right, then you would want a calcaluted scale on the bytes and a fixed 0-100 range on the percentage.

Comment by Alexei Vladishev [ 2019 May 08 ]

New dashboard graphs already provide this functionality. It will be extended to all graphs as soon as we move fully to vector graphics, most likely in 4.4.

Comment by Yannick Hein [ 2020 Oct 08 ]

Zabbix 5.0 user here - am I missing something or has this still not been implemented?

I would also highly benefit from this feature! I'm monitoring a temperature sensor in our server room and I have temperature on the right, humidity on the left and if I set fixed values to 0-100 then you can barely tell the temperature.

I'd need 18-28 for temp and 20-60 for humidity...

Comment by Alexei Vladishev [ 2020 Oct 08 ]

not_working_here, it has been implemented for dashboard graphs. We are still working on merging functionality of older graphs with new graph engine.

Comment by Yannick Hein [ 2020 Oct 08 ]

Yes, I saw that, the dashboard graphs are great but I'd like to build a screen with those graphs. And since you wrote "It will be extended to all graphs as soon as we move fully to vector graphics, most likely in 4.4." I wanted to ask whether I had simply missed an option since I'm already using 5.

Generated at Wed Apr 24 03:39:16 EEST 2024 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.