
=head1 NAME

smokeping_config - Reference for the SmokePing Config File

=head1 OVERVIEW

SmokePing takes its configuration from a single central configuration file.
Its location must be hardcoded in the smokeping script and smokeping.cgi.

The contents of this manual is generated directly from the configuration
file parser.

The Parser for the Configuration file is written using David Schweikers
Config::Grammar module. Read all about it in L<Config::Grammar>.

The Configuration file has a tree-like structure with section headings at
various levels. It also contains variable assignments and tables.

Warning: this manual is rather long. See L<smokeping_examples>
for simple configuration examples.

=head1 REFERENCE

=head2 GENERAL SYNTAX

The text below describes the general syntax of the SmokePing configuration file.
It was copied from the Config::Grammar documentation.

'#' denotes a comment up to the end-of-line, empty lines are allowed and space
at the beginning and end of lines is trimmed.

'\' at the end of the line marks a continued line on the next line. A single
space will be inserted between the concatenated lines.

'@include filename' is used to include another file.

'@define a some value' will replace all occurences of 'a' in the following text
with 'some value'.

Fields in tables that contain white space can be enclosed in either C<'> or C<">.
Whitespace can also be escaped with C<\>. Quotes inside quotes are allowed but must
be escaped with a backslash as well.

=head2 SPECIFIC SYNTAX

The text below describes the specific syntax of the SmokePing configuration file.

=head2 *** General *** I<(mandatory section)>

General configuration values valid for the whole SmokePing setup.


The following variables can be set in this section:

=over

=item B<owner> I<(mandatory setting)>

Name of the person responsible for this smokeping installation.


=item B<imgcache> I<(mandatory setting)>

A directory which is visible on your webserver where SmokePing can cache graphs.


=item B<imgurl> I<(mandatory setting)>

Either an absolute URL to the B<imgcache> directory or one relative to the directory where you keep the
SmokePing cgi.


=item B<datadir> I<(mandatory setting)>

The directory where SmokePing can keep its rrd files.


=item B<dyndir>

The base directory where SmokePing keeps the files related to the DYNAMIC function.
This directory must be writeable by the WWW server.

If this variable is not specified, the value of C<datadir> will be used instead.


=item B<pagedir>

Directory to store static representations of pages.


=item B<piddir> I<(mandatory setting)>

The directory where SmokePing keeps its pid when daemonised.


=item B<sendmail>

Path to your sendmail binary. It will be used for sending mails in connection with the support of DYNAMIC addresses.			     


=item B<offset>

If you run many instances of smokeping you may want to prevent them from
hitting your network all at the same time. Using the offset parameter you
can change the point in time when the probes are run. Offset is specified
in % of total interval, or alternatively as 'random'. I recommend to use
'random'. Note that this does NOT influence the rrds itself, it is just a
matter of when data acqusition is initiated.  The default offset is 'random'.


=item B<smokemail> I<(mandatory setting)>

Path to the mail template for DYNAMIC hosts. This mail template
must contain keywords of the form B<E<lt>##>I<keyword>B<##E<gt>>. There is a sample
template included with SmokePing.


=item B<cgiurl> I<(mandatory setting)>

Complete URL path of the SmokePing.cgi


=item B<mailhost>

Instead of using sendmail, you can specify the name of an smtp server 
and use perl's Net::SMTP module to send mail to DYNAMIC host owners (see below).


=item B<contact> I<(mandatory setting)>

Mail address of the person responsible for this smokeping installation.


=item B<netsnpp>

=item B<syslogfacility>

The syslog facility to use, eg. local0...local7. 
Note: syslog logging is only used if you specify this.


=item B<syslogpriority>

The syslog priority to use, eg. debug, notice or info. 
Default is info.


=item B<concurrentprobes>

If you use multiple probes or multiple instances of the same probe and you
want them to run concurrently in separate processes, set this to 'yes'. This
gives you the possibility to specify probe-specific step and offset parameters 
(see the 'Probes' section) for each probe and makes the probes unable to block
each other in cases of service outages. The default is 'yes', but if you for
some reason want the old behaviour you can set this to 'no'.


=item B<changeprocessnames>

When using 'concurrentprobes' (see above), this controls whether the probe
subprocesses should change their argv string to indicate their probe in
the process name.  If set to 'yes' (the default), the probe name will
be appended to the process name as '[probe]', eg.  '/usr/bin/smokeping
[FPing]'. If you don't like this behaviour, set this variable to 'no'.
If 'concurrentprobes' is not set to 'yes', this variable has no effect.


Default value: changeprocessnames = yes

=item B<tmail>

Path to your tSmoke HTML mail template file. See the tSmoke documentation for details.


=item B<changecgiprogramname>

Usually the Smokeping CGI tries to log any possible errors with an extended
program name that includes the IP address of the remote client for easier
debugging. If this variable is set to 'no', the program name will not be 
modified. The only reason you would want this is if you have a very old
version of the CGI::Carp module. See 
L<the installation document|smokeping_install> for details.


Default value: changecgiprogramname = yes

=item B<linkstyle>

How the CGI self-referring links are created. The possible values are 

=over

=item absolute 

Full hostname and path derived from the 'cgiurl' variable 

S<<a href="http://hostname/path/smokeping.cgi?foo=bar">>

=item relative 

Only the parameter part is specified 

S<<a href="?foo=bar">>

=item original 

The way the links were generated before Smokeping version 2.0.4:
no hostname, only the path 

S<<a href="/path/smokeping.cgi?foo=bar">>

=back

The default is "relative", which hopefully works for everybody.


Default value: linkstyle = relative

=back

=head2 *** Database *** I<(mandatory section)>

Describes the properties of the round robin database for storing the
SmokePing data. Note that it is not possible to edit existing RRDs
by changing the entries in the cfg file.


The following variables can be set in this section:

=over

=item B<step> I<(mandatory setting)>

Duration of the base operation interval of SmokePing in seconds.
SmokePing will venture out every B<step> seconds to ping your target hosts.
If 'concurrent_probes' is set to 'yes' (see above), this variable can be 
overridden by each probe. Note that the step in the RRD files is fixed when 
they are originally generated, and if you change the step parameter afterwards, 
you'll have to delete the old RRD files or somehow convert them. 


=item B<pings> I<(mandatory setting)>

How many pings should be sent to each target. Suggested: 20 pings. Minimum value: 3 pings.
This can be overridden by each probe. Some probes (those derived from
basefork.pm, ie. most except the FPing variants) will even let this
be overridden target-specifically. Note that the number of pings in
the RRD files is fixed when they are originally generated, and if you
change this parameter afterwards, you'll have to delete the old RRD
files or somehow convert them.


=back

This section also contains a table describing the setup of the
SmokePing database. Below are reasonable defaults. Only change them if
you know rrdtool and its workings. Each row in the table describes one RRA.

 # cons   xff steps rows
 AVERAGE  0.5   1   1008
 AVERAGE  0.5  12   4320
     MIN  0.5  12   4320
     MAX  0.5  12   4320
 AVERAGE  0.5 144    720
     MAX  0.5 144    720
     MIN  0.5 144    720



=over

=item column 0

Consolidation method.


=item column 1

What part of the consolidated intervals must be known to warrant a known entry.


=item column 2

How many B<steps> to consolidate into for each RRA entry.


=item column 3

How many B<rows> this RRA should have.


=back

=head2 *** Presentation *** I<(mandatory section)>

Defines how the SmokePing data should be presented.


The following variables can be set in this section:

=over

=item B<template> I<(mandatory setting)>

The webpage template must contain keywords of the form 
B<E<lt>##>I<keyword>B<##E<gt>>. There is a sample
template included with SmokePing; use it as the basis for your
experiments. Default template contains a pointer to the SmokePing
counter and homepage. I would be glad if you would not remove this as
it gives me an indication as to how widely used the tool is.


=item B<charset>

By default, SmokePing assumes the 'iso-8859-15' character set. If you use
something else, this is the place to speak up.


=back

The following sections are valid on level 1:

=over

=item B<+overview> I<(mandatory section)>

The Overview section defines how the Overview graphs should look.


The following variables can be set in this section:

=over

=item B<width> I<(mandatory setting)>

Width of the Overview Graphs.


=item B<height> I<(mandatory setting)>

Height of the Overview Graphs.


=item B<range>

How much time should be depicted in the Overview graph. Time must be specified
as a number followed by a letter which specifies the unit of time. Known units are:
B<s>econds, B<m>inutes, B<h>ours, B<d>days, B<w>eeks, B<y>ears.


=item B<max_rtt>

Any roundtrip time larger than this value will cropped in the overview graph


=item B<median_color>

By default the median line is drawn in red. Override it here with a hex color
in the format I<rrggbb>.


=item B<strftime>

Use posix strftime to format the timestamp in the left hand
lower corner of the overview graph


=back

=item B<+detail> I<(mandatory section)>

The following variables can be set in this section:

=over

=item B<width> I<(mandatory setting)>

How many pixels wide should detail graphs be

=item B<height> I<(mandatory setting)>

How many pixels high should detail graphs be

=item B<logarithmic>

should the graphs be shown in a logarithmic scale (yes/no)

=item B<unison_tolerance>

if a graph is more than this factor of the median 'max' it drops out of the unison scaling algorithm. A factor of two would mean that any graph with a max either less than half or more than twice the median 'max' will be dropped from unison scaling

=item B<max_rtt>

Any roundtrip time larger than this value will cropped in the detail graph


=item B<strftime>

Use posix strftime to format the timestamp in the left hand
lower corner of the detail graph


=item B<nodata_color>

Paint the graph background in a special color when there is no data for this period because smokeping has not been running (#rrggbb)

=back

The detailed display can contain several graphs of different resolution. In this
table you can specify the resolution of each graph.

Example:

 "Last 3 Hours"    3h
 "Last 30 Hours"   30h
 "Last 10 Days"    10d
 "Last 400 Days"   400d



=over

=item column 0

Description of the particular resolution.


=item column 1

How much time should be depicted. The format is the same as for the B<age>  parameter of the Overview section.


=back

The following sections are valid on level 2:

=over

=item B<++loss_colors>

In the Detail view, the color of the median line depends
the amount of lost packets. SmokePing comes with a reasonable default setting,
but you may choose to disagree. The table below
lets you specify your own coloring.

Example:

 Loss Color   Legend
 1    00ff00    "<1"
 3    0000ff    "<3"
 1000 ff0000    ">=3"



=over

=item column 0

Activate when the number of losst pings is larger or equal to this number                       


=item column 1

Color for this range.


=item column 2

Description for this range.


=back

=item B<++uptime_colors>

When monitoring a host with DYNAMIC addressing, SmokePing will keep
track of how long the machine is able to keep the same IP
address. This time is plotted as a color in the graphs
background. SmokePing comes with a reasonable default setting, but you
may choose to disagree. The table below lets you specify your own
coloring

Example:

 # Uptime      Color     Legend
 3600          00ff00   "<1h"
 86400         0000ff   "<1d"
 604800        ff0000   "<1w"
 1000000000000 ffff00   ">1w"

Uptime is in days!



=over

=item column 0

Activate when uptime in days is larger of equal to this number


=item column 1

Color for this uptime range range.


=item column 2

Description for this range.


=back

=back

=back

=head2 *** Probes *** I<(mandatory section)>

The Probes Section configures Probe modules. Probe modules integrate
an external ping command into SmokePing. Check the documentation of each
module for more information about it.


The following sections are valid on level 1:

=over

=item B<+/[-_0-9a-zA-Z]+/>

Each module can take specific configuration information from this
area. The jumble of letters above is a regular expression defining legal
module names.

See the documentation of each module for details about its variables.


The grammar of this section is I<dynamically> modified based on its name.

The following sections are valid on level 2:

=over

=item B<++/[-_0-9a-zA-Z]+/>

You can define multiple instances of the same probe with subsections. 
These instances can have different values for their variables, so you
can eg. have one instance of the FPing probe with packet size 1000 and
step 300 and another instance with packet size 64 and step 30.
The name of the subsection determines what the probe will be called, so
you can write descriptive names for the probes.

If there are any subsections defined, the main section for this probe
will just provide default parameter values for the probe instances, ie.
it will not become a probe instance itself.

The example above would be written like this:

 *** Probes ***

 + FPing
 # this value is common for the two subprobes
 binary = /usr/bin/fping 

 ++ FPingLarge
 packetsize = 1000
 step = 300

 ++ FPingSmall
 packetsize = 64
 step = 30



=back

Dynamical grammar changes for example instances of this section:

=over

=item B<AnotherDNS>: (See the L<separate module documentation|Smokeping::probes::AnotherDNS> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<lookup>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<mininterval>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: mininterval = 0.5

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<port>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: port = 53

=item B<recordtype>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: recordtype = A

=item B<require_answers>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<require_noerror>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<lookup>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: mininterval = 0.5

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: port = 53

=item B<recordtype>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: recordtype = A

=item B<require_answers>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<require_noerror>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=back

=back

(End of dynamical grammar changes for example instance C<AnotherDNS>.)

=item B<AnotherSSH>: (See the L<separate module documentation|Smokeping::probes::AnotherSSH> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<greeting>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: greeting = SSH-Latency-Measurement-Sorry-for-this-logmessage

=item B<interval>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: interval = established

=item B<mininterval>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: mininterval = 0.5

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<port>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: port = 22

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<greeting>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: greeting = SSH-Latency-Measurement-Sorry-for-this-logmessage

=item B<interval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: interval = established

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: mininterval = 0.5

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: port = 22

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=back

=back

(End of dynamical grammar changes for example instance C<AnotherSSH>.)

=item B<CiscoRTTMonDNS>: (See the L<separate module documentation|Smokeping::probes::CiscoRTTMonDNS> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<timeout>

Default value: timeout = 5

=item B<ioshost>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<iosint>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<name>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<ioshost>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosint>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<name>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<CiscoRTTMonDNS>.)

=item B<CiscoRTTMonEchoICMP>: (See the L<separate module documentation|Smokeping::probes::CiscoRTTMonEchoICMP> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<timeout>

Default value: timeout = 5

=item B<ioshost>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<iosint>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<packetsize>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: packetsize = 56

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<vrf>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<ioshost>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosint>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<packetsize>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: packetsize = 56

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<vrf>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<CiscoRTTMonEchoICMP>.)

=item B<CiscoRTTMonTcpConnect>: (See the L<separate module documentation|Smokeping::probes::CiscoRTTMonTcpConnect> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<timeout>

Default value: timeout = 5

=item B<ioshost>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<iosint>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<port>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: port = 80

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<ioshost>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosint>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: port = 80

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<CiscoRTTMonTcpConnect>.)

=item B<Curl>: (See the L<separate module documentation|Smokeping::probes::Curl> for details about each variable.)

The following new variables are valid:

=over

=item B<binary>

Default value: binary = /usr/bin/curl

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<agent>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<extraargs>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<extrare>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: extrare = / /

=item B<follow_redirects>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: follow_redirects = no

=item B<include_redirects>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: include_redirects = no

=item B<insecure_ssl>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<interface>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ssl2>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 10

=item B<urlformat>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: binary = /usr/bin/curl

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<agent>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraargs>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extrare>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: extrare = / /

=item B<follow_redirects>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: follow_redirects = no

=item B<include_redirects>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: include_redirects = no

=item B<insecure_ssl>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<interface>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ssl2>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 10

=item B<urlformat>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<Curl>.)

=item B<DNS>: (See the L<separate module documentation|Smokeping::probes::DNS> for details about each variable.)

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<timeout>

Default value: timeout = 5

=item B<lookup>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<server>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<lookup>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<server>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<DNS>.)

=item B<EchoPing>: (See the L<separate module documentation|Smokeping::probes::EchoPing> for details about each variable.)

The following new variables are valid:

=over

=item B<binary>

Default value: binary = /usr/bin/echoping

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<extraopts>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<fill>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ipversion>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<priority>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<size>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<udp>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<waittime>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: binary = /usr/bin/echoping

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<fill>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<size>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<udp>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<EchoPing>.)

=item B<EchoPingChargen>: (See the L<separate module documentation|Smokeping::probes::EchoPingChargen> for details about each variable.)

The following new variables are valid:

=over

=item B<binary>

Default value: binary = /usr/bin/echoping

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<extraopts>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<fill>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ipversion>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<priority>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<size>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<waittime>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: binary = /usr/bin/echoping

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<fill>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<size>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<EchoPingChargen>.)

=item B<EchoPingDiscard>: (See the L<separate module documentation|Smokeping::probes::EchoPingDiscard> for details about each variable.)

The following new variables are valid:

=over

=item B<binary>

Default value: binary = /usr/bin/echoping

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<extraopts>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<fill>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ipversion>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<priority>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<size>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<udp>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<waittime>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: binary = /usr/bin/echoping

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<fill>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<size>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<udp>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<EchoPingDiscard>.)

=item B<EchoPingHttp>: (See the L<separate module documentation|Smokeping::probes::EchoPingHttp> for details about each variable.)

The following new variables are valid:

=over

=item B<binary>

Default value: binary = /usr/bin/echoping

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<extraopts>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ignore_cache>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ipversion>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<port>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<priority>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<revalidate_data>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<url>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: url = /

=item B<waittime>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: binary = /usr/bin/echoping

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ignore_cache>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<revalidate_data>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<url>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: url = /

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<EchoPingHttp>.)

=item B<EchoPingHttps>: (See the L<separate module documentation|Smokeping::probes::EchoPingHttps> for details about each variable.)

The following new variables are valid:

=over

=item B<binary>

Default value: binary = /usr/bin/echoping

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<extraopts>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ignore_cache>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ipversion>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<port>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<priority>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<revalidate_data>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<url>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: url = /

=item B<waittime>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: binary = /usr/bin/echoping

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ignore_cache>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<revalidate_data>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<url>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: url = /

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<EchoPingHttps>.)

=item B<EchoPingIcp>: (See the L<separate module documentation|Smokeping::probes::EchoPingIcp> for details about each variable.)

The following new variables are valid:

=over

=item B<binary>

Default value: binary = /usr/bin/echoping

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<extraopts>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ipversion>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<priority>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<url>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<waittime>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: binary = /usr/bin/echoping

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<url>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<EchoPingIcp>.)

=item B<EchoPingSmtp>: (See the L<separate module documentation|Smokeping::probes::EchoPingSmtp> for details about each variable.)

The following new variables are valid:

=over

=item B<binary>

Default value: binary = /usr/bin/echoping

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<extraopts>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<ipversion>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<priority>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<tos>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<waittime>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: binary = /usr/bin/echoping

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<EchoPingSmtp>.)

=item B<FPing>: (See the L<separate module documentation|Smokeping::probes::FPing> for details about each variable.)

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

=item B<hostinterval>

=item B<mininterval>

Default value: mininterval = 0.01

=item B<offset>

=item B<packetsize>

=item B<pings>

=item B<step>

=item B<timeout>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<hostinterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: mininterval = 0.01

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<packetsize>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<FPing>.)

=item B<FPing6>: (See the L<separate module documentation|Smokeping::probes::FPing6> for details about each variable.)

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

=item B<hostinterval>

=item B<mininterval>

Default value: mininterval = 0.01

=item B<offset>

=item B<packetsize>

=item B<pings>

=item B<step>

=item B<timeout>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<hostinterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: mininterval = 0.01

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<packetsize>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<FPing6>.)

=item B<IOSPing>: (See the L<separate module documentation|Smokeping::probes::IOSPing> for details about each variable.)

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<packetsize>

Default value: packetsize = 56

=item B<step>

=item B<timeout>

Default value: timeout = 5

=item B<ioshost>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<iosint>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<iosuser>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<packetsize>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: packetsize = 56

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<ioshost>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosint>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosuser>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<IOSPing>.)

=item B<LDAP>: (See the L<separate module documentation|Smokeping::probes::LDAP> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<passwordfile>

=item B<step>

=item B<attrs>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<base>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<binddn>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<filter>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<mininterval>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: mininterval = 1

=item B<password>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<port>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<scope>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: scope = sub

=item B<start_tls>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<version>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<passwordfile>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<attrs>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<base>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<binddn>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<filter>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: mininterval = 1

=item B<password>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<scope>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: scope = sub

=item B<start_tls>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<version>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<LDAP>.)

=item B<Radius>: (See the L<separate module documentation|Smokeping::probes::Radius> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<passwordfile>

=item B<secretfile>

=item B<step>

=item B<mininterval>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: mininterval = 1

=item B<nas_ip_address>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<password>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<port>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<secret>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<username>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<passwordfile>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<secretfile>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: mininterval = 1

=item B<nas_ip_address>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<password>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<secret>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<username>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<Radius>.)

=item B<RemoteFPing>: (See the L<separate module documentation|Smokeping::probes::RemoteFPing> for details about each variable.)

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

=item B<hostinterval>

=item B<mininterval>

Default value: mininterval = 0.01

=item B<offset>

=item B<packetsize>

=item B<pings>

=item B<rbinary> I<(mandatory setting)>

=item B<rhost> I<(mandatory setting)>

=item B<ruser>

=item B<step>

=item B<timeout>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<hostinterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: mininterval = 0.01

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<packetsize>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<rbinary> I<(mandatory setting)>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<rhost> I<(mandatory setting)>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ruser>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<RemoteFPing>.)

=item B<SSH>: (See the L<separate module documentation|Smokeping::probes::SSH> for details about each variable.)

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<step>

=item B<timeout>

Default value: timeout = 5

=item B<keytype>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: keytype = rsa

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<binary> I<(mandatory setting)>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<keytype>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: keytype = rsa

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<SSH>.)

=item B<TacacsPlus>: (See the L<separate module documentation|Smokeping::probes::TacacsPlus> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<passwordfile>

=item B<secretfile>

=item B<step>

=item B<authtype>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: authtype = ASCII

=item B<mininterval>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: mininterval = 1

=item B<password>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<port>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: port = 49

=item B<secret>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<timeout>

 (This variable can be overridden target-specifically in the Targets section.)

Default value: timeout = 5

=item B<username>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<passwordfile>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<secretfile>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<authtype>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: authtype = ASCII

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: mininterval = 1

=item B<password>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: port = 49

=item B<secret>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<username>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<TacacsPlus>.)

=item B<TelnetIOSPing>: (See the L<separate module documentation|Smokeping::probes::TelnetIOSPing> for details about each variable.)

The following new variables are valid:

=over

=item B<forks>

Default value: forks = 5

=item B<offset>

=item B<packetsize>

Default value: packetsize = 56

=item B<step>

=item B<timeout>

Default value: timeout = 5

=item B<iospass>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<iosuser>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=item B<pings>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<psource>

 (This variable can be overridden target-specifically in the Targets section.)

=item B<source>

 (This variable can be overridden target-specifically in the Targets section.)

This variable I<dynamically> modifies the grammar based on its value.

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<forks>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: forks = 5

=item B<offset>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<packetsize>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: packetsize = 56

=item B<step>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: timeout = 5

=item B<iospass>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosuser>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<psource>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<source>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for example instance C<TelnetIOSPing>.)

=back

(End of dynamical grammar changes for example instances of section C</[-_0-9a-zA-Z]+/>.)

=back

=head2 *** Alerts ***

The Alert section lets you setup loss and RTT pattern detectors. After each
round of polling, SmokePing will examine its data and determine which
detectors match. Detectors are enabled per target and get inherited by
the targets children.

Detectors are not just simple thresholds which go off at first sight
of a problem. They are configurable to detect special loss or RTT
patterns. They let you look at a number of past readings to make a
more educated decision on what kind of alert should be sent, or if an
alert should be sent at all.

The patterns are numbers prefixed with an operator indicating the type
of comparison required for a match.

The following RTT pattern detects if a target's RTT goes from constantly
below 10ms to constantly 100ms and more:

 old ------------------------------> new
 <10,<10,<10,<10,<10,>10,>100,>100,>100

Loss patterns work in a similar way, except that the loss is defined as the
percentage the total number of received packets is of the total number of packets sent.

 old ------------------------------> new
 ==0%,==0%,==0%,==0%,>20%,>20%,>=20%

Apart from normal numbers, patterns can also contain the values B<*>
which is true for all values regardless of the operator. And B<U>
which is true for B<unknown> data together with the B<==> and B<=!> operators.

Detectors normally act on state changes. This has the disadvantage, that
they will fail to find conditions which were already present when launching
smokeping. For this it is possible to write detectors that begin with the
special value B<==S> it is inserted whenever smokeping is started up.

You can write

 ==S,>20%,>20%

to detect lines that have been losing more than 20% of the packets for two
periods after startup.

Sometimes it may be that conditions occur at irregular intervals. But still
you only want to throw an alert if they occur several times within a certain
amount of times. The operator B<*X*> will ignore up to I<X> values and still
let the pattern match:

  >10%,*10*,>10%

will fire if more than 10% of the packets have been lost at least twice over the
last 10 samples.

A complete example

 *** Alerts ***
 to = admin@company.xy,peter@home.xy
 from = smokealert@company.xy

 +lossdetect
 type = loss
 # in percent
 pattern = ==0%,==0%,==0%,==0%,>20%,>20%,>20%
 comment = suddenly there is packet loss

 +miniloss
 type = loss
 # in percent
 pattern = >0%,*12*,>0%,*12*,>0%
 comment = detected loss 3 times over the last two hours

 +rttdetect
 type = rtt
 # in milliseconds
 pattern = <10,<10,<10,<10,<10,<100,>100,>100,>100
 comment = routing messed up again ?

 +rttbadstart
 type = rtt
 # in milliseconds
 pattern = ==S,==U
 comment = offline at startup
  


The following variables can be set in this section:

=over

=item B<to> I<(mandatory setting)>

Either an email address to send alerts to, or the name of a program to
execute when an alert matches. To call a program, the first character of the
B<to> value must be a pipe symbol "|". The program will the be called
whenever an alert matches, using the following 5 arguments 
(except if B<edgetrigger> is 'yes'; see below):
B<name-of-alert>, B<target>, B<loss-pattern>, B<rtt-pattern>, B<hostname>.
You can also provide a comma separated list of addresses and programs.


=item B<from> I<(mandatory setting)>

who should alerts appear to be coming from ?

=item B<edgetrigger>

The alert notifications and/or the programs executed are normally triggered every
time the alert matches. If this variable is set to 'yes', they will be triggered
only when the alert's state is changed, ie. when it's raised and when it's cleared.
Subsequent matches of the same alert will thus not trigger a notification.

When this variable is set to 'yes', a notification program (see the B<to> variable
documentation above) will get a sixth argument, B<raise>, which has the value 1 if the alert
was just raised and 0 if it was cleared.


Default value: edgetrigger = no

=back

The following sections are valid on level 1:

=over

=item B<+/[^\s,]+/>

The following variables can be set in this section:

=over

=item B<type> I<(mandatory setting)>

Currently the pattern types B<rtt> and B<loss> and B<matcher> are known. 

Matchers are plugin modules that extend the alert conditions.  Known
matchers are L<Avgratio|Smokeping::matchers::Avgratio>, L<CheckLatency|Smokeping::matchers::CheckLatency>, L<CheckLoss|Smokeping::matchers::CheckLoss>, L<Median|Smokeping::matchers::Median>.

See the documentation of the corresponding matcher module
(eg. L<Smokeping::matchers::Avgratio>) for instructions on
configuring it.


=item B<pattern> I<(mandatory setting)>

a comma separated list of comparison operators and numbers. rtt patterns are in milliseconds, loss patterns are in percents

=item B<comment> I<(mandatory setting)>

=item B<to>

Similar to the "to" parameter on the top-level except that  it will only be used IN ADDITION to the value of the toplevel parameter. Same rules apply.

=item B<edgetrigger>

This variable I<inherits> its value from the parent section if nothing is specified here.

Default value: edgetrigger = no

=back

=back

=head2 *** Targets *** I<(mandatory section)>

The Target Section defines the actual work of SmokePing. It contains a hierarchical list
of hosts which mark the endpoints of the network connections the system should monitor.
Each section can contain one host as well as other sections.


The following variables can be set in this section:

=over

=item B<probe> I<(mandatory setting)>

The name of the probe module to be used for this host. The value of
this variable gets propagated


This variable I<dynamically> modifies the grammar based on its value.

=item B<menu> I<(mandatory setting)>

Menu entry for this section. If not set this will be set to the hostname.


=item B<title> I<(mandatory setting)>

Title of the page when it is displayed. This will be set to the hostname if
left empty.


=item B<remark>

An optional remark on the current section. It gets displayed on the webpage.


=item B<alerts>

A comma separated list of alerts to check for this target. The alerts have
to be setup in the Alerts section. Alerts are inherited by child nodes. Use
an empty alerts definition to remove inherited alerts from the current target
and its children.



=back

The following sections are valid on level 1:

=over

=item B<+/[-_0-9a-zA-Z]+/>

Each target section can contain information about a host to monitor as
well as further target sections. Most variables have already been
described above. The expression above defines legal names for target
sections.


This section is I<recursive>: it can contain subsection(s) with the same syntax.

The following variables can be set in this section:

=over

=item B<probe>

This variable I<inherits> its value from the parent section if nothing is specified here.

This variable I<dynamically> modifies the grammar based on its value.

=item B<menu>

=item B<title>

=item B<alerts>

Comma separated list of alert names

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<note>

Some information about this entry which does NOT get displayed on the web.


=item B<email>

This is the contact address for the owner of the current host. In connection with the B<DYNAMIC> hosts,
the address will be used for sending the belowmentioned script.


=item B<host>

Can either contain the name of a target host or the string B<DYNAMIC>.

In the second case, the target machine has a dynamic IP address and
thus is required to regularly contact the SmokePing server to verify
its IP address.  When starting SmokePing with the commandline argument
B<--email> it will add a secret password to each of the B<DYNAMIC>
host lines and send a script to the owner of each host. This script
must be started regularly on the host in question to make sure
SmokePing monitors the right box. If the target machine supports
SNMP SmokePing will also query the hosts
sysContact, sysName and sysLocation properties to make sure it is
still the same host.


=item B<remark>

=item B<rawlog>

Log the raw data, gathered for this target, in tab separated format, to a file with the
same basename as the corresponding RRD file. Use posix strftime to format the timestamp to be
put into the file name. The filename is built like this:

 basename.strftime.csv

Example:

 rawlog=%Y-%m-%d

this would create a new logfile every day with a name like this: 

 targethost.2004-05-03.csv



=item B<alertee>

If you want to have alerts for this target and all targets below it go to a particular address
on top of the address already specified in the alert, you can add it here. This can be a comma separated list of items.


This variable I<inherits> its value from the parent section if nothing is specified here.

=back

The following sections are valid on level 2:

=over

=item B<++/[-_0-9a-zA-Z]+/>

This section is I<recursive>: it can contain subsection(s) with the same syntax.

=back

=back

Dynamical grammar changes for example values of variable C<probe>:

=over

=item B<AnotherDNS>: (See the L<separate module documentation|Smokeping::probes::AnotherDNS> for details about each variable.)

The following new variables are valid:

=over

=item B<lookup>

=item B<mininterval>

=item B<pings>

=item B<port>

=item B<recordtype>

=item B<require_answers>

=item B<require_noerror>

=item B<timeout>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<lookup>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<recordtype>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<require_answers>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<require_noerror>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<AnotherDNS>.)

=item B<AnotherSSH>: (See the L<separate module documentation|Smokeping::probes::AnotherSSH> for details about each variable.)

The following new variables are valid:

=over

=item B<greeting>

=item B<interval>

=item B<mininterval>

=item B<pings>

=item B<port>

=item B<timeout>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<greeting>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<interval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<AnotherSSH>.)

=item B<CiscoRTTMonDNS>: (See the L<separate module documentation|Smokeping::probes::CiscoRTTMonDNS> for details about each variable.)

The following new variables are valid:

=over

=item B<ioshost>

=item B<iosint>

=item B<name>

=item B<pings>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<ioshost>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosint>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<name>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<CiscoRTTMonDNS>.)

=item B<CiscoRTTMonEchoICMP>: (See the L<separate module documentation|Smokeping::probes::CiscoRTTMonEchoICMP> for details about each variable.)

The following new variables are valid:

=over

=item B<ioshost>

=item B<iosint>

=item B<packetsize>

=item B<pings>

=item B<tos>

=item B<vrf>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<ioshost>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosint>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<packetsize>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<vrf>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<CiscoRTTMonEchoICMP>.)

=item B<CiscoRTTMonTcpConnect>: (See the L<separate module documentation|Smokeping::probes::CiscoRTTMonTcpConnect> for details about each variable.)

The following new variables are valid:

=over

=item B<ioshost>

=item B<iosint>

=item B<pings>

=item B<port>

=item B<tos>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<ioshost>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosint>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<CiscoRTTMonTcpConnect>.)

=item B<Curl>: (See the L<separate module documentation|Smokeping::probes::Curl> for details about each variable.)

The following new variables are valid:

=over

=item B<agent>

=item B<extraargs>

=item B<extrare>

=item B<follow_redirects>

=item B<include_redirects>

=item B<insecure_ssl>

=item B<interface>

=item B<pings>

=item B<ssl2>

=item B<timeout>

=item B<urlformat>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<agent>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extraargs>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<extrare>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<follow_redirects>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<include_redirects>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<insecure_ssl>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<interface>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ssl2>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<urlformat>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<Curl>.)

=item B<DNS>: (See the L<separate module documentation|Smokeping::probes::DNS> for details about each variable.)

The following new variables are valid:

=over

=item B<lookup>

=item B<pings>

=item B<server>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<lookup>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<server>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<DNS>.)

=item B<EchoPing>: (See the L<separate module documentation|Smokeping::probes::EchoPing> for details about each variable.)

The following new variables are valid:

=over

=item B<extraopts>

=item B<fill>

=item B<ipversion>

=item B<pings>

=item B<priority>

=item B<size>

=item B<timeout>

=item B<tos>

=item B<udp>

=item B<waittime>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<fill>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<size>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<udp>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<EchoPing>.)

=item B<EchoPingChargen>: (See the L<separate module documentation|Smokeping::probes::EchoPingChargen> for details about each variable.)

The following new variables are valid:

=over

=item B<extraopts>

=item B<fill>

=item B<ipversion>

=item B<pings>

=item B<priority>

=item B<size>

=item B<timeout>

=item B<tos>

=item B<waittime>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<fill>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<size>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<EchoPingChargen>.)

=item B<EchoPingDiscard>: (See the L<separate module documentation|Smokeping::probes::EchoPingDiscard> for details about each variable.)

The following new variables are valid:

=over

=item B<extraopts>

=item B<fill>

=item B<ipversion>

=item B<pings>

=item B<priority>

=item B<size>

=item B<timeout>

=item B<tos>

=item B<udp>

=item B<waittime>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<fill>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<size>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<udp>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<EchoPingDiscard>.)

=item B<EchoPingHttp>: (See the L<separate module documentation|Smokeping::probes::EchoPingHttp> for details about each variable.)

The following new variables are valid:

=over

=item B<extraopts>

=item B<ignore_cache>

=item B<ipversion>

=item B<pings>

=item B<port>

=item B<priority>

=item B<revalidate_data>

=item B<timeout>

=item B<tos>

=item B<url>

=item B<waittime>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ignore_cache>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<revalidate_data>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<url>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<EchoPingHttp>.)

=item B<EchoPingHttps>: (See the L<separate module documentation|Smokeping::probes::EchoPingHttps> for details about each variable.)

The following new variables are valid:

=over

=item B<extraopts>

=item B<ignore_cache>

=item B<ipversion>

=item B<pings>

=item B<port>

=item B<priority>

=item B<revalidate_data>

=item B<timeout>

=item B<tos>

=item B<url>

=item B<waittime>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ignore_cache>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<revalidate_data>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<url>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<EchoPingHttps>.)

=item B<EchoPingIcp>: (See the L<separate module documentation|Smokeping::probes::EchoPingIcp> for details about each variable.)

The following new variables are valid:

=over

=item B<extraopts>

=item B<ipversion>

=item B<pings>

=item B<priority>

=item B<timeout>

=item B<tos>

=item B<url>

=item B<waittime>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<url>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<EchoPingIcp>.)

=item B<EchoPingSmtp>: (See the L<separate module documentation|Smokeping::probes::EchoPingSmtp> for details about each variable.)

The following new variables are valid:

=over

=item B<extraopts>

=item B<ipversion>

=item B<pings>

=item B<priority>

=item B<timeout>

=item B<tos>

=item B<waittime>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<extraopts>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<ipversion>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<priority>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<tos>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<waittime>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<EchoPingSmtp>.)

=item B<FPing>: (See the L<separate module documentation|Smokeping::probes::FPing> for details about each variable.)

No changes that can be automatically described.

(End of dynamical grammar changes for variable C<probe> example value C<FPing>.)

=item B<FPing6>: (See the L<separate module documentation|Smokeping::probes::FPing6> for details about each variable.)

No changes that can be automatically described.

(End of dynamical grammar changes for variable C<probe> example value C<FPing6>.)

=item B<IOSPing>: (See the L<separate module documentation|Smokeping::probes::IOSPing> for details about each variable.)

The following new variables are valid:

=over

=item B<ioshost>

=item B<iosint>

=item B<iosuser>

=item B<pings>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<ioshost>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosint>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosuser>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<IOSPing>.)

=item B<LDAP>: (See the L<separate module documentation|Smokeping::probes::LDAP> for details about each variable.)

The following new variables are valid:

=over

=item B<attrs>

=item B<base>

=item B<binddn>

=item B<filter>

=item B<mininterval>

=item B<password>

=item B<pings>

=item B<port>

=item B<scope>

=item B<start_tls>

=item B<timeout>

=item B<version>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<attrs>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<base>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<binddn>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<filter>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<password>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<scope>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<start_tls>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<version>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<LDAP>.)

=item B<Radius>: (See the L<separate module documentation|Smokeping::probes::Radius> for details about each variable.)

The following new variables are valid:

=over

=item B<mininterval>

=item B<nas_ip_address>

=item B<password>

=item B<pings>

=item B<port>

=item B<secret>

=item B<timeout>

=item B<username>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<nas_ip_address>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<password>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<secret>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<username>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<Radius>.)

=item B<RemoteFPing>: (See the L<separate module documentation|Smokeping::probes::RemoteFPing> for details about each variable.)

No changes that can be automatically described.

(End of dynamical grammar changes for variable C<probe> example value C<RemoteFPing>.)

=item B<SSH>: (See the L<separate module documentation|Smokeping::probes::SSH> for details about each variable.)

The following new variables are valid:

=over

=item B<keytype>

=item B<pings>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<keytype>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<SSH>.)

=item B<TacacsPlus>: (See the L<separate module documentation|Smokeping::probes::TacacsPlus> for details about each variable.)

The following new variables are valid:

=over

=item B<authtype>

=item B<mininterval>

=item B<password>

=item B<pings>

=item B<port>

=item B<secret>

=item B<timeout>

=item B<username>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<authtype>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<mininterval>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<password>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<port>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<secret>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<timeout>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<username>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<TacacsPlus>.)

=item B<TelnetIOSPing>: (See the L<separate module documentation|Smokeping::probes::TelnetIOSPing> for details about each variable.)

The following new variables are valid:

=over

=item B<iospass>

=item B<iosuser>

=item B<pings>

=item B<psource>

=item B<source>

=back

Syntax changes for subsection B</[-_0-9a-zA-Z]+/>

=over

The following new variables are valid:

=over

=item B<iospass>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<iosuser>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<pings>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<psource>

This variable I<inherits> its value from the parent section if nothing is specified here.

=item B<source>

This variable I<inherits> its value from the parent section if nothing is specified here.

=back

=back

(End of dynamical grammar changes for variable C<probe> example value C<TelnetIOSPing>.)

=back

(End of dynamical grammar changes for example values of variable C<probe>.)

=head1 COPYRIGHT

Copyright (c) 2001-2003 by Tobias Oetiker. All right reserved.

=head1 LICENSE

This program is free software; you can redistribute it
and/or modify it under the terms of the GNU General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later
version.

This program is distributed in the hope that it will be
useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.  See the GNU General Public License for more
details.

You should have received a copy of the GNU General Public
License along with this program; if not, write to the Free
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA
02139, USA.

=head1 AUTHOR

Tobias Oetiker E<lt>tobi@oetiker.chE<gt>

=cut
