.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Smokeping_probes_RemoteFPing 3" .TH Smokeping_probes_RemoteFPing 3 "2022-05-08" "2.8.2" "SmokePing" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Smokeping::probes::RemoteFPing \- Remote FPing Probe for SmokePing .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& *** Probes *** \& \& +RemoteFPing \& \& binary = /usr/bin/ssh # mandatory \& blazemode = true \& hostinterval = 1.5 \& interface = eth0 \& mininterval = 0.001 \& offset = 50% \& packetsize = 5000 \& pings = 20 \& protocol = 4 \& rbinary = /usr/bin/fping # mandatory \& rhost = my.pinger.host # mandatory \& rport = 22 \& ruser = foo \& sourceaddress = 192.168.0.1 \& step = 300 \& timeout = 1.5 \& tos = 0x20 \& usestdout = true \& \& # The following variables can be overridden in each target section \& /^influx_.+/ = influx_location = In the basement \& \& # [...] \& \& *** Targets *** \& \& probe = RemoteFPing # if this should be the default probe \& \& # [...] \& \& + mytarget \& # probe = RemoteFPing # if the default probe is something else \& host = my.host \& /^influx_.+/ = influx_location = In the basement .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Integrates the remote execution of FPing via ssh/rsh into smokeping. The variable \fBbinary\fR must point to your copy of the ssh/rsh program. The variable \fBrbinary\fR must point to your copy of the fping program at the remote end. .SH "VARIABLES" .IX Header "VARIABLES" Supported probe-specific variables: .IP "binary" 4 .IX Item "binary" This variable specifies the path of the remote shell program (usually ssh, rsh or remsh). Any other script or binary that can be called as .Sp binary [ \-l ruser ] [ \-p rport ] rhost rbinary .Sp may be used. .Sp Example value: /usr/bin/ssh .Sp This setting is mandatory. .IP "blazemode" 4 .IX Item "blazemode" Send an extra ping and then discard the first answer since the first is bound to be an outlier. .Sp Example value: true .IP "hostinterval" 4 .IX Item "hostinterval" The fping \*(L"\-p\*(R" parameter, but in (possibly fractional) seconds rather than milliseconds, for consistency with other Smokeping probes. From \fBfping\fR\|(1): .Sp This parameter sets the time that fping waits between successive packets to an individual target. .Sp Example value: 1.5 .IP "interface" 4 .IX Item "interface" The name of the network interface to perform the ping on. .Sp Example value: eth0 .IP "mininterval" 4 .IX Item "mininterval" The fping \*(L"\-i\*(R" parameter, but in (probably fractional) seconds rather than milliseconds, for consistency with other Smokeping probes. From \fBfping\fR\|(1): .Sp The minimum amount of time between sending a ping packet to any target. .Sp Example value: 0.001 .Sp Default value: 0.01 .IP "offset" 4 .IX Item "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 \s-1NOT\s0 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.) .Sp Example value: 50% .IP "packetsize" 4 .IX Item "packetsize" The ping packet size (in the range of 12\-64000 bytes). .Sp Example value: 5000 .IP "pings" 4 .IX Item "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 \s-1RRD\s0 files is fixed when they are originally generated, and if you change this parameter afterwards, you'll have to delete the old \s-1RRD\s0 files or somehow convert them. .Sp Example value: 20 .IP "protocol" 4 .IX Item "protocol" Choose if the ping should use IPv4 or IPv6. .Sp Example value: 4 .IP "rbinary" 4 .IX Item "rbinary" The location of your fping binary. .Sp Example value: /usr/bin/fping .Sp This setting is mandatory. .IP "rhost" 4 .IX Item "rhost" The \fBrhost\fR option specifies the remote device from where fping will be launched. .Sp Example value: my.pinger.host .Sp This setting is mandatory. .IP "rport" 4 .IX Item "rport" The (optional) \fBrport\fR option allows you to specify the port of the remote host. .Sp Example value: 22 .IP "ruser" 4 .IX Item "ruser" The (optional) \fBruser\fR option allows you to specify the remote user, if different from the one running the smokeping daemon. .Sp Example value: foo .IP "sourceaddress" 4 .IX Item "sourceaddress" The fping \*(L"\-S\*(R" parameter . From \fBfping\fR\|(1): .Sp Set source address. .Sp Example value: 192.168.0.1 .IP "step" 4 .IX Item "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 \s-1RRD\s0 files is fixed when they are originally generated, and if you change the step parameter afterwards, you'll have to delete the old \s-1RRD\s0 files or somehow convert them. (This variable is only applicable if the variable 'concurrentprobes' is set in the 'General' section.) .Sp Example value: 300 .IP "timeout" 4 .IX Item "timeout" The fping \*(L"\-t\*(R" parameter, but in (possibly fractional) seconds rather than milliseconds, for consistency with other Smokeping probes. Note that as Smokeping uses the fping 'counting' mode (\-C), this apparently only affects the last ping. .Sp Example value: 1.5 .IP "tos" 4 .IX Item "tos" Set the type of service (\s-1TOS\s0) of outgoing \s-1ICMP\s0 packets. You need at laeast fping\-2.4b2_to3\-ipv6 for this to work. Find a copy on www.smokeping.org/pub. .Sp Example value: 0x20 .IP "usestdout" 4 .IX Item "usestdout" Listen for FPing output on stdout instead of stderr ... (version 3.3+ sends its statistics on stdout). .Sp Example value: true .SH "AUTHORS" .IX Header "AUTHORS" .Vb 1 \& Luis F Balbinot \& \& Niko Tyni \& \& derived from Smokeping::probes::FPing by \& \& Tobias Oetiker .Ve .SH "NOTES" .IX Header "NOTES" It is important to make sure that you can access the remote machine without a password prompt, otherwise this probe will not work properly. To test just try something like this: .PP .Vb 1 \& $ ssh foo@HostA.foobar.com fping HostB.barfoo.com .Ve .PP The next thing you see must be fping's output. .PP The \fBrhost\fR, \fBruser\fR, \fBrport\fR and \fBrbinary\fR variables used to be configured in the Targets section of the first target or its parents They were moved to the Probes section, because the variables aren't really target-specific (all the targets are measured with the same parameters). The Targets sections aren't recognized anymore. .SH "BUGS" .IX Header "BUGS" This functionality should be in a generic 'remote execution' module so that it could be used for the other probes too.