# # status.sh Configuration File # # What should be monitored? Each line one entry. # # Structure: # ;; # # COMMAND: Command to run. Can be ping, curl or nc. # ping = send ICMP ECHO_REQUEST packets to network hosts # curl = transfer a URL # http-status = check the HTTP status of a URL # nc = check TCP and UDP connections # grep = extension to the curl check # curl downloads the webpage and pipes it to grep, # that checks if the keyword is in the page. # traceroute = check if host or ip exists in route path to MY_TRACEROUTE_HOST # script = execute a script which returns 0 on success # # HOSTNAME: Hostname for the 'ping', 'nc' or 'traceroute' command # IP: IP adress for the 'ping', 'nc' or 'traceroute' command # URL: URL called by the command 'curl', 'http-status' and 'grep'. I.e. https://www.heise.de/ping or ftp://ftp.debian.org/debian/README # PATH: PATH of the script called by the command 'script', eg. check.sh # The pipe `|` can be used as a separator to display a custom text instead of the HOSTNAME/IP/URL (see example below). # # PORT: Optional port specification. Only for 'nc' command. # GREP TEXT: Text to look for when using the 'grep' command. # HTTP STATUS: HTTP status code required to pass when using the 'http-status' command. # # # ping; # ping;www.heise.de ping;www.otto.de|custom text instead of hostname ping6;www.google.com|www.google.com (IPv6) # # nc;; # nc;www.heise.de;80 nc;www.bsi.de|My secret Hostname;80 # # curl;; # curl;https://www.heise.de/ping curl;ftp://ftp.debian.org/debian/README curl;https://example.com/|My secret URL # # http-status;; # http-status;https://www.nkn-it.de/ci.txt;200 # # grep;; # grep;https://www.nkn-it.de/imprint.html;Nils # # traceroute;; # # Note: # This HOSTNAME or IP is not the host to which the route path is traced. This is done via the parameter MY_TRACEROUTE_HOST # This HOSTNAME or IP must be present in the route path. # MAX NUMBER OF HOPS sets the max time-to-live (max number of hops) used in outgoing probe packets. # If the hostname should always be the third hop, enter 3. # traceroute;your.isp.router;3 traceroute;your.secret.router|My secret Hostname;2 # # script; # # Note: Outage if returncode is not 0, Degraded if returncode is 80 # script;/path/to/your/script.sh|My secret Name script;scripts/check-websites.sh|Multiple Websites