185 lines
5.5 KiB
Perl
Executable File
185 lines
5.5 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
# -*-perl-*-
|
|
|
|
use strict;
|
|
use warnings;
|
|
|
|
use FindBin;
|
|
use lib (split /:/, q{}); # PERL5LIB
|
|
use lib "$FindBin::RealBin/../lib";use lib "$FindBin::RealBin/../thirdparty/lib/perl5"; # LIBDIR
|
|
|
|
use Smokeping;
|
|
|
|
Smokeping::main("$FindBin::RealBin/../etc/config");
|
|
|
|
=head1 NAME
|
|
|
|
smokeping - Commandline tool for SmokePing
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
B<smokeping> [ B<--email> | B<--makepod> | B<--version> | B<--restart> ]
|
|
|
|
Options:
|
|
|
|
--man[=x] Show the manpage for the program (or for probe x, if specified)
|
|
|
|
--help Help :-)
|
|
|
|
--email Send SmokePing Agents to all Targets marked DYNAMIC
|
|
|
|
--config=x Use a config file different from the default
|
|
|
|
--check Just check the config file syntax, don't start the daemon
|
|
|
|
--makepod[=x] Create POD documentation on Config file (or for probe x, if specified)
|
|
|
|
--version Show SmokePing Version
|
|
|
|
--debug Run Only once and do not Fork
|
|
|
|
--debug-daemon Start the daemon with debugging enabled
|
|
|
|
--restart Restart SmokePing
|
|
|
|
--reload Reload configuration in the running process without interrupting
|
|
any probes
|
|
|
|
--nodaemon Do no daemonize the process (no fork)
|
|
|
|
--filter=x Only measure entries which pass the filter x
|
|
|
|
--logfile=x Append warnings to logfile x.
|
|
|
|
--static[=x] Generates a static website in directory x. If x is left out,
|
|
pagedir from the config is used.
|
|
|
|
--nosleep For debugging you may want to run SmokePing without sleep interval
|
|
|
|
--gen-examples Generate the smokeping_examples document and example config files
|
|
(to be used while building inside the smokeping distribution)
|
|
With --check : check the syntax of the generated examples.
|
|
|
|
--master-url=s Run smokeping in slave mode. Attach to master for config.
|
|
|
|
--slave-name=s By default the slave will use whatever it thinks its name
|
|
is, when talking to its master. In some cases you may
|
|
probably want to override this.
|
|
|
|
|
|
--shared-secret=s File containing the shared secret for talking to the server.
|
|
|
|
--cache-dir=s Directory for temporary data storage when running in slave mode.
|
|
|
|
--pid-dir=s Directory for the PID file when running in slave mode.
|
|
(optional, defaults to --cache-dir)
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
The B<smokeping> tool is the commandline part of the SmokePing system. Its
|
|
main function is to run as a daemon and send Pings to all the Targets you
|
|
have specified in the Config file. When you call B<smokeping> without
|
|
arguments it will start as a daemon and do its work.
|
|
|
|
If called with an argument, then further functions can be activated, as seen
|
|
in the Synopsis above. The B<--email> function is explained in the
|
|
documentation on the config file.
|
|
|
|
The B<--filter> option allows you to run the daemon on a big config file,
|
|
but have the config file filtered and only measure the entries that pass the
|
|
filter. This is useful for remote measurement. Run Smokeping with two
|
|
exclusive filters in two locations and rsync the rrds back to the webserver
|
|
host where you run the cgi. Filters act on the section names in the config
|
|
file. Multiple section names are concatenated with B</> like path names:
|
|
|
|
*** targets ***
|
|
+ A
|
|
....
|
|
+ B
|
|
...
|
|
++ C
|
|
|
|
This gives
|
|
|
|
/A
|
|
|
|
and
|
|
|
|
/B, /B/C
|
|
|
|
If I want to monitor /A my filter would look like this:
|
|
|
|
--filter=/A
|
|
|
|
Filters follow regular expression syntax. The are always anchored at the tip of the string.
|
|
by adding a B<!> to the front of the filter string you negate it. Matching entries will be excluded from monitoring.
|
|
Multiple B<--filter> arguments can be used to assemble complex filters:
|
|
|
|
--filter=/A --filter=/B
|
|
|
|
would include all the targets
|
|
|
|
--filter=/A --filter=/B --filter=!/B/C
|
|
|
|
would include all but /B/C.
|
|
|
|
The B<--makepod> does get used internally to produce the
|
|
L<documentation on the SmokePing configuration file|smokeping_config>.
|
|
|
|
Please refer to L<the installation document|smokeping_install> for detailed setup instructions.
|
|
|
|
=head1 SETUP
|
|
|
|
When installing SmokePing, this file has to be adjusted to fit your
|
|
local system. Three paths have to be entered.
|
|
|
|
One pointing to your B<rrdtool> installation
|
|
|
|
use lib qw(/usr/pack/rrdtool-1.0.33-to/lib/perl);
|
|
|
|
One pointing to the place where you have installed the SmokePing libraries
|
|
|
|
use lib qw(/home/oetiker/public_html/smokeping/lib);
|
|
|
|
The third path is the argument to the Smokeping::main command. It points to
|
|
the SmokePing configuration file.
|
|
|
|
use Smokeping;
|
|
Smokeping::main("/home/oetiker/.smokeping/config");
|
|
|
|
=head1 SEE ALSO
|
|
|
|
L<smokeping_config(5)>, L<smokeping_examples(5)>, L<smokeping_cgi(1)>,
|
|
L<tSmoke(1)>, L<smokeping_master_slave(7)>, L<smokeping_extend(7)>,
|
|
L<smokeping_install(7)>, L<smokeping_upgrade(7)>,
|
|
How to read the graphs https://oss.oetiker.ch/smokeping/doc/reading.en.html
|
|
|
|
=head1 COPYRIGHT
|
|
|
|
Copyright (c) 2002 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
|