
# listening port ( default 9898 )
port 9899

# on which IP to bind (default 127.0.0.1 ) * = all IP
#host 10.2.1.1

# which client addr is allow ( default 127.0.0.0/8 )
#cidr_allow = 0.0.0.0/0 

# verbosity from 0 to 4 (default 0 = no log )
log_level = 1

# daemonize (default 0 = no )
daemon = 1

# content put a HTML content after header
# (default 0 = no content 1 = html 2 = table )
content = 2

# reparse the config file at each request ( default 0 = no )
# only SIGHUP reread the config file)
reparse = 1

# pid_file  (default /var/run/check.pid )
# $$$ = basename of config file
# $$ = PID
pid_file=/var/run/CHECK_$$$.pid

# log_file  (default /var/log/check.log )
# $$$ = basename of config file
# $$ = PID
log_file=/var/log/CHECK_$$$.log

# number of servers to keep running (default = 5)
min_servers = 2

# number of servers to have waiting for requests (default = 2)
min_spare_servers = 1

# maximum number of servers to have waiting for requests (default = 10)
max_spare_servers =1

# number of servers (default = 50)
max_servers = 2


###########################################################
# a server to check
# type could be get , regex or tcp

# get = do a http or ftp get and check the result code with
# the list, coma separated, provided ( default = 200,201 )
# hostheader is optional and send to the server if provided

# regex = do a http or ftp get and check the content result 
# with regex provided
# hostheader is optional and send to the server if provided

# tcp = test if the tcp port provided is open

#<realserver>
#	url=http://127.0.0.1:80/apache2-default/index.html
#	type = get
#	code=200,201
#	hostheader = www.test.com
#</realserver>


#<realserver>
#	url=http://127.0.0.1:82/apache2-default/index.html
#	type = get
#	code=200,201
#	hostheader = www.myhost.com
#</realserver>

<realserver>
	url=	 http://10.2.2.1
	type = regex
	regex= /qdAbm/
</realserver>

<realserver>
	type = tcp
	url = 10.2.2.1
	port =80
</realserver>

#<realserver>
#	type = get
#	url = ftp://FTPuser:FTPpassword@10.2.3.1
#	code=200,201
#</realserver>
