[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [hobbit] Xymon 4.3.0: Beta version available on Sourceforge



Hi Lars,

seems you have really good luck with my test versions today :-)

On Mon, Feb 09, 2009 at 05:40:13PM +0100, Lars Ebeling wrote:
> Hobbitd:filestore crashes on HP-UX 11.11
>
> Core was generated by `hobbitd_filest'.
> Program terminated with signal 6, Aborted.
>
> #4  0x0000e130 in sigsegv_handler (signum=8216) at sig.c:57
> #5  <signal handler called>
> #6  0x0000aa64 in call_locator (buf=0x4004ef58 "X|rrd|leopg9", bufsz=1130)
>    at locator.c:76
> #7  0x0000b57c in locator_query (hostname=0x400076b3 "leopg9",  
> svctype=ST_RRD,
>    extras=0x7bfe3160) at locator.c:342
> #12 0x00004bd4 in main (argc=1073772311, argv=0x400076ba)
>    at hobbitd_filestore.c:325

Ok, must admit I have never tested hobbitd_filestore with the RRD
graphs running remotely (I don't use that module myself).

The problem appears to be that the code which generates the links
to the graph on the status page believe that the graphs are located
on another server, so it generates a request to the new "locator"
module to figure out where the graph is. Problem is, the locator
module was never initialised, so hobbitd_filestore has no idea where
the locator is - it doesn't know the IP+portnumber of the locator
service.

What commandline were you using to launch the hobbitd_filestore
program ?

I think the attached patch should fix it, if you use the right
commandline to start hobbitd_filestore. I.e. you must add the
"--locator=IP:PORTNUMBER" (probably the IP of your Xymon server,
and port 1984) to the hobbitd_filestore command.


Regards,
Henrik

Index: hobbitd/hobbitd_filestore.c
===================================================================
--- hobbitd/hobbitd_filestore.c	(revision 6106)
+++ hobbitd/hobbitd_filestore.c	(working copy)
@@ -241,6 +241,9 @@
 			multigraphs = (char *)malloc(strlen(p+1) + 3);
 			sprintf(multigraphs, ",%s,", p+1);
 		}
+		else if (net_worker_option(argv[argi])) {
+			/* Handled in the subroutine */
+		}
 	}
 
 	if (filedir == NULL) {