Smokeping_probes_EchoPing(3)

NAME
Smokeping::probes::EchoPing - an echoping(1) probe for SmokePing

OVERVIEW
Measures TCP or UDP echo (port 7) roundtrip times for SmokePing. Can also be used as a base class for other echoping(1) probes.

SYNOPSIS
 *** Probes ***

 +EchoPing

 binary = /usr/bin/echoping
 forks = 5
 offset = 50%
 step = 300

 # The following variables can be overridden in each target section
 /^influx_.+/ = influx_location = In the basement
 extraopts = -some-letter-the-author-did-not-think-of
 fill = A
 ipversion = 4
 pings = 5
 priority = 6
 size = 510
 timeout = 1
 tos = 0xa0
 udp = no
 waittime = 1

 # [...]

 *** Targets ***

 probe = EchoPing # if this should be the default probe

 # [...]

 + mytarget
 # probe = EchoPing # if the default probe is something else
 host = my.host
 /^influx_.+/ = influx_location = In the basement
 extraopts = -some-letter-the-author-did-not-think-of
 fill = A
 ipversion = 4
 pings = 5
 priority = 6
 size = 510
 timeout = 1
 tos = 0xa0
 udp = no
 waittime = 1

DESCRIPTION
See echoping(1) for details of the options below.

VARIABLES
Supported probe-specific variables:

binary
    The location of your echoping binary.

    Default value: /usr/bin/echoping

forks
    Run this many concurrent processes at maximum

    Example value: 5

    Default value: 5

offset
    If you run many probes concurrently you may want to prevent them from hitting your network all at the same time. Using the probe-specific offset parameter you can change the point in time when each probe will be run. Offset is specified in % of total interval, or alternatively as 'random', and the offset from the 'General' section is used if nothing is specified here. Note that this does NOT influence the rrds itself, it is just a matter of when data acquisition is initiated. (This variable is only applicable if the variable 'concurrentprobes' is set in the 'General' section.)

    Example value: 50%

step
    Duration of the base interval that this probe should use, if different from the one specified in the 'Database' section. 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. (This variable is only applicable if the variable 'concurrentprobes' is set in the 'General' section.)

    Example value: 300

Supported target-specific variables:

/^influx_.+/
    This is a tag that will be sent to influxdb and has no impact on the probe measurement. The tag name will be sent without the "influx_" prefix, which will be replaced with "tag_" instead. Tags can be used for filtering.

    Example value: influx_location = In the basement

extraopts
    Any extra options specified here will be passed unmodified to echoping(1).

    Example value: -some-letter-the-author-did-not-think-of

fill
    The "-f" echoping(1) option.

    Example value: A

ipversion
    The IP protocol used. Possible values are "4" and "6". Passed to echoping(1) as the "-4" or "-6" options.

    Example value: 4

pings
    How many pings should be sent to each target, if different from the global value specified in the Database section. 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.

    Example value: 5

priority
    The "-p" echoping(1) option.

    Example value: 6

size
    The "-s" echoping(1) option.

    Example value: 510

timeout
    The "-t" echoping(1) option.

    Example value: 1

    Default value: 5

tos The "-P" echoping(1) option.

    Example value: 0xa0

udp The "-u" echoping(1) option. Values other than '0' and 'no' enable UDP.

    Example value: no

waittime
    The "-w" echoping(1) option.

    Example value: 1

AUTHORS
Niko Tyni <ntyni@iki.fi>

BUGS
Should we test the availability of the service at startup? After that it's too late to complain.

The location of the echoping binary should probably be a global variable instead of a probe-specific one. As things are, every EchoPing -derived probe has to declare it if the default (/usr/bin/echoping) isn't correct.

SEE ALSO
echoping(1), Smokeping::probes::EchoPingHttp etc., <http://echoping.sourceforge.net/>