Event broker module - querying host/service/hostgroup...SIGSEVs
Posted: Fri Jan 13, 2006 8:46 am
Guys,
My problem was with the free statements (argh)... nevermind.
Can someone point me to other event broker module work being done out
there for 2.x? I found a couple here and there, but no list per se...
TIA,
Frank
_____________________________________________
From: Macha, Frank=20
Sent: Thursday, January 12, 2006 9:42 PM
To: '[email protected]'
Subject: Event broker module - querying host/service/hostgroup...SIGSEVs
Guys,
I've been playing with the helloworld module and the inserter modules
from the nagios-db code to try to get something functional. I've put
together a function registered via:
=20
neb_register_callback(NEBCALLBACK_TIMED_EVENT_DATA,nagiosdb_module_handl
e,0,loadConfig);
The function starts off with the following initialization...
static int loadConfig(int cmd, void *data){
host *hl;
service *sl;
hostgroup *hg;
hostgroupmember *hgm;
int groupcount;
char temp_buffer[1024];
char q[1024];
.
.
.
I have for-loops which query the host_list, service_list and
hostgroup_list lists. My problem is that I am getting SIGSEVs when the
following code inside this function runs:
=20
/* Get current hostgroup_list from configuration */
for(groupcount=3D0, hg =3D hostgroup_list; hg; hg =3D hg->next)
{
/* update this service */
char *groupName, *groupAlias, *hostName;
groupName=3Dhg->group_name;
groupAlias=3Dhg->alias;
/* insert this hostgroup */
=20
snprintf(temp_buffer,sizeof(temp_buffer)-1,"nagiosdb-efm: found
group %s with alias %s",groupName,groupAlias);
temp_buffer[sizeof(temp_buffer)-1]=3D'\x0';
write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE);
if(groupAlias) free(groupAlias);
for(hgm =3D hg->members; hgm; hgm =3D hgm->next)
{
/* add this host to the hostgroup */
hostName =3D hgm->host_name;
=20
snprintf(temp_buffer,sizeof(temp_buffer)-1,"nagiosdb-efm
: found host %s belongs to group %s, with groupid
%d",hostName,groupName,groupco
unt);
temp_buffer[sizeof(temp_buffer)-1]=3D'\x0';
=20
write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE);
if(hostName) free(hostName);
}
if(groupName) free(groupName);
if(hgm) free(hgm);
groupcount++;
}
snprintf(temp_buffer,sizeof(temp_buffer)-1,"nagiosdb-efm:
configured %d
groups", groupcount);
temp_buffer[sizeof(temp_buffer)-1]=3D'\x0';
write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE);
If I comment the above out, and run the other queries to the lists, no
SIGSEVs:
for(groupcount=3D0, hl =3D host_list; hl; hl =3D hl->next)
{
/* update this host */
snprintf(q,sizeof(q)-1,"nagiosdb-efm: Host %s found, has
followi
ng characteristics\n"
"checks_enabled %d, "
"accept_passive_host_checks %d, "
"event_handler_enabled %d, "
"flap_detection_enabled %d, "
"notifications_enabled %d, "
"failure_prediction_enabled %d, "
"process_performance_data %d, "
"obsess_over_host %d, "
"should_be_scheduled %d.",
hl->name,hl->checks_enabled,
hl->accept_passive_host_checks,
hl->event_handler_enabled,
hl->flap_detection_enabled,
hl->notifications_enabled,
hl->failure_prediction_enabled,
hl->process_performance_data,
hl->obsess_over_host,
hl->should_be_scheduled);
q[sizeof(q)-1]=3D'\x0';
write_to_all_logs(q,NSLOG_INFO_MESSAGE);
groupcount++;
}
snprintf(temp_buffer,sizeof(temp_buffer)-1,"nagiosdb-efm:
configured %d
hosts", groupcount);
temp_buffer[sizeof(temp_buffer)-1]=3D'\x0';
write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE);
What am I doing wrong with the hostgroup, hostgroupmember which causes
the SIGSEV?
My eventual goal is to dump this to a database, but right now I'm
dumping to the nagios.log file to make sure the data makes sense. The
destination database is an ODBC connected DB (MSSQL to be exact). =20
Anyhow, appreciate any leads which can help me...
Here's the log file:
[1136982099] Nagios 2.0rc2 starting... (PID=3D5542)
[1136982099] LOG VERSION: 2.0
[1136982099] nagios-EFM: Copyright (c) 2006 Frank Macha=20
[1136982099] nagios-EFM: Startup
[1136982099] nagiosdb-efm: Startup Complete
[1136982099] Event broker module
'/root/src/nagios-2.0rc2/module/frank5.o' initialized successfully.
[1136982099] War
...[email truncated]...
This post was automatically imported from historical nagios-devel mailing list archives
Original poster: acha, Frank=2
My problem was with the free statements (argh)... nevermind.
Can someone point me to other event broker module work being done out
there for 2.x? I found a couple here and there, but no list per se...
TIA,
Frank
_____________________________________________
From: Macha, Frank=20
Sent: Thursday, January 12, 2006 9:42 PM
To: '[email protected]'
Subject: Event broker module - querying host/service/hostgroup...SIGSEVs
Guys,
I've been playing with the helloworld module and the inserter modules
from the nagios-db code to try to get something functional. I've put
together a function registered via:
=20
neb_register_callback(NEBCALLBACK_TIMED_EVENT_DATA,nagiosdb_module_handl
e,0,loadConfig);
The function starts off with the following initialization...
static int loadConfig(int cmd, void *data){
host *hl;
service *sl;
hostgroup *hg;
hostgroupmember *hgm;
int groupcount;
char temp_buffer[1024];
char q[1024];
.
.
.
I have for-loops which query the host_list, service_list and
hostgroup_list lists. My problem is that I am getting SIGSEVs when the
following code inside this function runs:
=20
/* Get current hostgroup_list from configuration */
for(groupcount=3D0, hg =3D hostgroup_list; hg; hg =3D hg->next)
{
/* update this service */
char *groupName, *groupAlias, *hostName;
groupName=3Dhg->group_name;
groupAlias=3Dhg->alias;
/* insert this hostgroup */
=20
snprintf(temp_buffer,sizeof(temp_buffer)-1,"nagiosdb-efm: found
group %s with alias %s",groupName,groupAlias);
temp_buffer[sizeof(temp_buffer)-1]=3D'\x0';
write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE);
if(groupAlias) free(groupAlias);
for(hgm =3D hg->members; hgm; hgm =3D hgm->next)
{
/* add this host to the hostgroup */
hostName =3D hgm->host_name;
=20
snprintf(temp_buffer,sizeof(temp_buffer)-1,"nagiosdb-efm
: found host %s belongs to group %s, with groupid
%d",hostName,groupName,groupco
unt);
temp_buffer[sizeof(temp_buffer)-1]=3D'\x0';
=20
write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE);
if(hostName) free(hostName);
}
if(groupName) free(groupName);
if(hgm) free(hgm);
groupcount++;
}
snprintf(temp_buffer,sizeof(temp_buffer)-1,"nagiosdb-efm:
configured %d
groups", groupcount);
temp_buffer[sizeof(temp_buffer)-1]=3D'\x0';
write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE);
If I comment the above out, and run the other queries to the lists, no
SIGSEVs:
for(groupcount=3D0, hl =3D host_list; hl; hl =3D hl->next)
{
/* update this host */
snprintf(q,sizeof(q)-1,"nagiosdb-efm: Host %s found, has
followi
ng characteristics\n"
"checks_enabled %d, "
"accept_passive_host_checks %d, "
"event_handler_enabled %d, "
"flap_detection_enabled %d, "
"notifications_enabled %d, "
"failure_prediction_enabled %d, "
"process_performance_data %d, "
"obsess_over_host %d, "
"should_be_scheduled %d.",
hl->name,hl->checks_enabled,
hl->accept_passive_host_checks,
hl->event_handler_enabled,
hl->flap_detection_enabled,
hl->notifications_enabled,
hl->failure_prediction_enabled,
hl->process_performance_data,
hl->obsess_over_host,
hl->should_be_scheduled);
q[sizeof(q)-1]=3D'\x0';
write_to_all_logs(q,NSLOG_INFO_MESSAGE);
groupcount++;
}
snprintf(temp_buffer,sizeof(temp_buffer)-1,"nagiosdb-efm:
configured %d
hosts", groupcount);
temp_buffer[sizeof(temp_buffer)-1]=3D'\x0';
write_to_all_logs(temp_buffer,NSLOG_INFO_MESSAGE);
What am I doing wrong with the hostgroup, hostgroupmember which causes
the SIGSEV?
My eventual goal is to dump this to a database, but right now I'm
dumping to the nagios.log file to make sure the data makes sense. The
destination database is an ODBC connected DB (MSSQL to be exact). =20
Anyhow, appreciate any leads which can help me...
Here's the log file:
[1136982099] Nagios 2.0rc2 starting... (PID=3D5542)
[1136982099] LOG VERSION: 2.0
[1136982099] nagios-EFM: Copyright (c) 2006 Frank Macha=20
[1136982099] nagios-EFM: Startup
[1136982099] nagiosdb-efm: Startup Complete
[1136982099] Event broker module
'/root/src/nagios-2.0rc2/module/frank5.o' initialized successfully.
[1136982099] War
...[email truncated]...
This post was automatically imported from historical nagios-devel mailing list archives
Original poster: acha, Frank=2