View Issue Details

IDProjectCategoryView StatusLast Update
466RackTablesdefaultpublic2012-10-05 15:07
Reportergrin Assigned Toinfrastation  
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version0.19.9 
Target Version0.19.11Fixed in Version0.19.11 
Summary466: Cacti redirector could use some more intelligence
DescriptionThank you for the cacti integration. Some thoughts.

1) Use
$ret['size'] = curl_getinfo ($session,CURLINFO_SIZE_DOWNLOAD);
instead of CURLINFO_CONTENT_LENGTH_DOWNLOAD as it sometimes gets 0 length back and completely screws everything up. Took me a while to figure out.

2) $url = $url . "&rra_id=1"; Or even better selectable (a freeform string to add to the URL would do it best, please don't forget to document it on the wiki ;-)).

3) Do http auth. I mean:
 curl_setopt( $session, CURLOPT_HTTPAUTH, CURLAUTH_BASIC ) ;
 curl_setopt( $session, CURLOPT_USERPWD, "login:pw");
with variables for them.

4) It would be useful to be a bit more modular (thinking) and create a general way to handle external graphers like cricket, mrtg, torrus et al. Their url structure is very similar.
TagsNo tags attached.

Activities

infrastation

infrastation

2011-09-20 14:29

administrator   ~0000431

Are there any improvements, which can be included into 0.19.10 release?

user105

2011-10-26 02:48

  ~0000465

1) Updated, and will commit shortly (to trunk and 0.19.x branch)

2) Not exactly sure what you are looking for. An example would help.

3) I'll work on this once I have some time to reconfigure a cacti server to test. This should make auth much easier if the end-user is using BASIC authentication.

4) The issue with making this more generic isn't so much the URL pattern, it's the authentication method, and dealing with the login form.

Additionally, I've added some more intelligence with respect to caching the authentication token from Cacti (cookie value). This prevents re-authenticating for every image...
grin

grin

2011-10-27 08:59

reporter   ~0000470

2) cacti produces several graphs with differing time ranges and resolution. right now RT doesn't particularly pick any, and it seems that my version of cacti doesn't really like it. The rra=<n> parameter selects one of the timerange graphs and includes that one, instead of an error.

My url for example for the 24h graph image is:
https://mycacti.sex/cacti/graph_image.php?action=view&local_graph_id=3236&rra_id=1
grin

grin

2011-10-27 09:02

reporter   ~0000471

4) well I didn't check the code but it it's modular then it's possible to create external/custom authentication modules.

For me it isn't an issue since all of my graphs are protected by basic http auth instead of custom login screens (since I include them all over in external pages).
infrastation

infrastation

2012-01-10 16:30

administrator   ~0000505

Point 4 has its reason, but does not belong to the scope of a single improvement request. What are the other points, which keep this request from being resolved?

user105

2012-01-11 03:36

  ~0000506

I'd recommend to close this having resolved the primary defect (images not showing), and open 2/3/4 each as a separate feature request.

I have also been thinking of a better way to make the entire code more generic, but it's not ready for prime time yet.
infrastation

infrastation

2012-10-02 15:52

administrator   ~0000845

Item 1 is resolved.

Item 4 is out of scope of this request.

I have tested item 2 and it does not reproduce, that is, a request to graph_image.php without the rra_id argument is treated as a request to RRA 1. How does it reproduce on your side?

Regarding item 3 (HTTP auth), what is the use case for it, which isn't covered by the current implementation?
infrastation

infrastation

2012-10-05 15:07

administrator   ~0000847

A bugfix for the main bug was available in 0.19.11. The rra_id argument will be available in release 0.20.2. If you feel the HTTP authentication change also deserves being committed, please make your arguments in either this issue or a new issue (with a tested patch, if possible). Thank you!

Issue History

Date Modified Username Field Change
2011-09-07 14:37 grin New Issue
2011-09-08 09:58 infrastation Status new => assigned
2011-09-08 09:58 infrastation Assigned To => user105
2011-09-20 14:29 infrastation Note Added: 0000431
2011-10-26 02:48 user105 Note Added: 0000465
2011-10-27 08:59 grin Note Added: 0000470
2011-10-27 09:02 grin Note Added: 0000471
2012-01-10 16:30 infrastation Note Added: 0000505
2012-01-11 03:36 user105 Note Added: 0000506
2012-10-02 15:52 infrastation Note Added: 0000845
2012-10-02 15:52 infrastation Assigned To user105 => infrastation
2012-10-05 15:07 infrastation Note Added: 0000847
2012-10-05 15:07 infrastation Status assigned => closed
2012-10-05 15:07 infrastation Resolution open => fixed
2012-10-05 15:07 infrastation Fixed in Version => 0.19.11
2012-10-05 15:07 infrastation Target Version => 0.19.11