Renamed project from libpingcheck to pingcheck
[pingcheck] / Readme
1      Table of Contents
2 =======================================
3 1. Introduction
4 2. Configuration File
5 3. Command line
6 4. References
7
8
9
10 1.   Introduction
11 =======================================
12 This application provides means to check the availability of remote hosts
13 through pings to them.
14
15
16 1.1. Rationale
17 ---------------------------------------
18 The application uses ICMP echo requests messages to verify if a given host
19 is available or not.
20
21 The host's address can be an IP or a DNS.
22
23
24 1.2. How to use
25 ---------------------------------------
26 There are many ways to invoke the application, the simplest is just type:
27   ./pingcheck
28 which uses the configuration values from the configuration file (describled in
29 the Configuration File section).
30
31
32 1.3. Resources
33 ---------------------------------------
34 Further information about the problem domain can be found in the References
35 section.
36
37
38 1.4. Legal Issues
39 ---------------------------------------
40 All rights reserved to Intra2net AG.
41
42
43
44 2.   Configuration file
45 =======================================
46 In this section are describled the configuration items, along with they
47 possible values and meanings. This section is organized in each major
48 configuration block.
49
50
51 2.1. General
52 ---------------------------------------
53 This configurations are shared among and affect all the hosts.
54 - source-network-interface: the local network interface from where the ping
55   packages with originate.
56 - nameserver: the server which the hosts names will be resolved. It is the
57   lookup server which the application will query first. If left blank or omited,
58   it will use the /etc/resolv.conf.
59 - hosts-down-limit: an absolute number, which ranges from 0 to the number of
60   hosts available. This value represents the minimum number of hosts that have
61   to fail (i.e. do not reply to the ping) in order to alert any external system.
62 - ping-fail-limit: percentage of pings to a host that can fail. If the
63   percentage of failed pings to a host exceed this number, then the host is
64   considered down.
65 - status-notifier-cmd: the command line that is called when a host is down, or
66   up. Accepted variables are:
67     ${status} - down or up
68 - link-up-interval: how long (in minutes) the pings don't have to fail
69   in order to consider the link up, or stable.
70
71
72 2.2. Host
73 ---------------------------------------
74 - name: the DNS or IP of the host to ping. Take in consideration that, if a
75   DNS is given, the application pings all IPs in the look up table, however, if
76   IP is provide, it is the only which will be pinged.
77 - interval: the host will be pinged every "interval" seconds.
78
79
80
81 3.   Command line
82 =======================================
83 The command line accepts the general configuration file options plus the
84 following:
85 - config-file: command line to specify a file where the hosts and other
86   configuration information are provided.
87
88
89
90 4.   References
91 =======================================
92 [1]  http://tools.ietf.org/html/rfc792
93 [2]  http://en.wikipedia.org/wiki/Ping
94 [3]  http://en.wikipedia.org/wiki/Internet_Control_Message_Protocol
95 [4]  http://www.boost.org/doc/libs/1_45_0/doc/html/boost_asio.html
96 [5]  http://www.boost.org/doc/libs/1_45_0/doc/html/program_options.html