[icinga-devel] Draft - making NDOutils/Idoutils obsolete

mareadmin mail at mare-system.de
Mon May 18 18:39:17 CEST 2009

Hi There

Martin Fuerstenau wrote:
> [ very interesting ]

> a) actual status data
> a) We have according to my informations (and I am not a really good C
> programmer) one module for writing status data (statusdata.c). If we
> patch this 575 line module to write to a database we have all the
> information needed for alternative web interfaces.

i took a look deeper and found in base/logging.c

functions like 

/* write a service problem/recovery to the icinga log file */

int log_service_event(service *svc){

	/* grab service macros */

	asprintf(&temp_buffer,"SERVICE ALERT: %s;%s;$SERVICESTATE$;$SERVICESTATETYPE$;$SERVICEATTEMPT$;%s\n",svc->host_name,svc->description,(svc->plugin_output==NULL)?"":svc->plugin_output);


	return OK;


maybe one could call ido2db from there, since all vars are collected 
already and just need to be injected into *db via an external module/command

> b) historical data
> b) This could be done patching the log writer mechanism using some code
> from the ndoutils

for me with a minor priority, but it's nice to have

> c) configuration data
> c) Nearly same as a.

i think this is a bigger problem; yo have initial-config-data, read by startup,
and then you have all those stuff coming through the webinterface / 
external-command-file; i fear, thats a lot more than patching the source as 
to be done in a)

> What do you think about that little idea? Think about it. My idea
> regarding to the major change in timeperiods was not so bad. Perhaps
> this is too. :-))

if c) could be done easily i think it's worth a try, especially if
you have a global option in incinga.conf

Markus Manzke

MARE System Kiel   .:.   http://www.mare-system.de

More information about the icinga-devel mailing list