ganglia / ganglia-web

Ganglia Web Frontend
BSD 3-Clause "New" or "Revised" License
317 stars 169 forks source link

inspect broken with rrdtool 1.5+ #342

Closed rubinlinux closed 5 years ago

rubinlinux commented 5 years ago

The rrdtool project re-wrote the xport function between versions 1.4 and 1.5, and in 1.5 the default behavior of rrdtool xport has changed to NOT include timestamps. The new rrdtool argument --showtime adds the timestamp back. I think we need to add this to the xport commandline in graph.php.

It is broken in the debian build (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=893879) but I have not been able to confirm this with the latest build yet. I am creating this so the information doesn't get lost, but this needs confirmed is actually a bug in the current web frontend before anyone wastes time on it here.

Reference:

kevallakhani commented 3 years ago

Do we have a fix for this? I am running rrdtool 1.7 and ganglia-webfrontend version 3.7.4. The inspect tool is broken and does not display anything. In the network tool it shows a 500 internal server error for the graph.php call for the inspect functionality. I tried putting --showtime in the graph.php file where "xport --start ..." but it still does not help. After some analysis it seems like rrdtool xport v 1.7 does not have --showtime option because it does not show up on the cmd line.

rubinlinux commented 3 years ago

Kevallakhani, Based on the linked commit 8cb9a58 this was fixed in 3.7.5 back in March.

kevallakhani commented 3 years ago

Yeah I know and I tried to add those two commits (8cb9a58 and d4bbe11) manually but it still doesn't seem to work. The inspect module pops up but with no data and the graph.php call results to 500 error. Interestingly, other graph.php calls go through but the ones that originate from inspect tool fail with empty graph module.

kevallakhani commented 3 years ago

Dug a bit more into the graph.php code and logs and saw that clicking on inspect tool fails due to this error on apache2:

PHP Fatal error: Uncaught Error: Call to a member function count() on null in /usr/share/ganglia-webfrontend/graph.php:1164\nStack trace:\n#0 /usr/share/ganglia-webfrontend/graph.php(1681): output_data_to_external_format(' DEF:'a0'='/var...', '-14400s', 'now', 'Aggregate softi...', '/usr/bin/rrdtoo...', NULL, NULL, 1, NULL, NULL, NULL, ' --daemon /tmp/...')\n#1 {main}\n thrown in /usr/share/ganglia-webfrontend/graph.php on line 1164

Seems like it doesn't get any data for rows.