File: gencfg.in

package info (click to toggle)
nagios-plugin-check-multi 0.26-6
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 1,172 kB
  • sloc: perl: 2,296; makefile: 415; sh: 239
file content (41 lines) | stat: -rw-r--r-- 1,110 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/perl
#
# create more than 1 host config to put some load into passive feeding
#
#
my $hostsfile="addhosts.cfg";
my $myself=`basename $0`; chomp $myself;
#
my $nhosts=shift(@ARGV);
if (!$nhosts) {
	print STDERR "\nusage: $myself <number of hosts>\n"; 
	print STDERR "\tfor <n> hosts host and service definitions will be created\n";
	print STDERR "\tand written to file $hostsfile\n\n";
	exit 1;
}
#
`rm -f ${hostsfile}.old` if (-f "${hostsfile}.old");
`mv ${hostsfile} ${hostsfile}.old` if (-f "${hostsfile}");
open(HOSTS,">${hostsfile}") || die "Cannot open ${hostsfile} for writing:$!\n";
#
for (my $i=1;$i<=$nhosts;$i++) {

	#--- 1. host definition
	print HOSTS<<EOF;

#--- host definition for passive_$i
define host {
	host_name	passive_$i
	hostgroups	passive_feeded_hosts
	address		127.0.0.1
	use		linux-server
}
EOF

	#--- 2.  service definition
	my $output=`../../plugins/check_multi -f feed_passive.cmd -r 2048 -s service_definition_template=service_definition.tpl -s HOSTNAME=passive_${i}`;
        print HOSTS $output;

	#--- 3. give some output (for the impatient :))
	print STDERR '.';
}