misterdai/cftracker

initial launch fails, garbage.rrd not found

Closed this issue · 3 comments

Getting a problem right out of the gate, first time installation of CFTracker (the 2.2 beta) onto a given machine. I extracted the zip into an appropriate webroot, and tried to run the index.cfm, but I got an error because garbage.rrd was non-existent:

Could not open [docroot]\cftracker\misterdai-cfTracker-d3eaed8/tools/monitor/rrd/garbage.rrd [non existent]

Are you expecting that for first-time users? I didn't see anything in the readme or on the wiki page for installation that suggested I needed to do anything other than extract the files and run them.

You may notice two things about the path above. First, you'll see that it shows a \ and / between the installation directory and tools/monitor path. This was on a Windows machine that I had installed it. I think Java is forgiving about that, so it seems instead to be a problem of the file really being missing.

It seems the error is in some java code, rather than CFML, judging from the stack trace:

java.io.FileNotFoundException: Could not open C:\inetpub\wwwroot\cftracker\misterdai-cfTracker-d3eaed8/tools/monitor/rrd/garbage.rrd [non existent] at org.rrd4j.core.RrdDb.(Unknown Source) at org.rrd4j.core.RrdDb.(Unknown Source) at org.rrd4j.data.DataProcessor.getRrd(Unknown Source) at org.rrd4j.data.DataProcessor.fetchRrdData(Unknown Source) at org.rrd4j.data.DataProcessor.processData(Unknown Source) at org.rrd4j.graph.RrdGraph.fetchData(Unknown Source) at org.rrd4j.graph.RrdGraph.createGraph(Unknown Source) at org.rrd4j.graph.RrdGraph.(Unknown Source) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:513) at coldfusion.runtime.java.JavaProxy.CreateObject(JavaProxy.java:166) at coldfusion.runtime.java.JavaProxy.invoke(JavaProxy.java:80) at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360) at cfrrdGraph2ecfc599567324$funcRENDER.runFunction(C:\inetpub\wwwroot\cftracker\misterdai-cfTracker-d3eaed8\tools\monitor\rrdGraph.cfc:130) at coldfusion.runtime.UDFMethod.invoke(UDFMethod.java:472) at
....

Besides any trick you may suggest to get past it (if perhaps forcing some garbage.rrd file into that location), I hope instead it may be possible to find/resolve the problem, lest others suffer this as their first experience. I'm encouraged to see all the work you've done since the earliest builds.

Thanks for logging this issue. Garbage.rrd and other .rrd files should be created by the new scheduled task. If you download the latest code from the rrd branch...

http://github.com/misterdai/cfTracker/zipball/rrd

...it now includes better handling of those files not being generated. If they're missing, a message is displayed pointing them to the install.txt file that contains instructions.

I've also tried to tidy up the paths to make sure it wasn't that causing you problems as well. You make a good point about the wiki not mentioning the instructions. This is a beta release but I should mirror the beta instructions in the wiki as most people will look there first.

Please let me know if this has got things working for you. :)

Digging further into this problem, I realised that the required java library (rrd4j) wouldn't have been loaded either due to another incorrect path. This got past me as I hadn't remembered to delete the library from my CFML engine installation lib directories and thought JavaLoader was doing the job.

This has been fixed with the 2.2 Beta 3 release. If you have any further trouble, log another issue or contact me and I'll reopen this one.

Thanks, David, that did sort things out. Will share new feedback in separate messages.