Smokeping unter Debian/Ubuntu Linux

Aus Laub-Home Wiki

Hier eine kleine Anleitung wie man das kleine Programm smokeping unter Debian bzw. Ubuntu Linux zum laufen bekommt.

Installation

aptitude install smokeping

Konfiguration

Nun zur Konfiguration, alle Konfigfiles befinden sich unter /etc/smokeping/. Als erstes wichtiges Configfile ist das /etc/smokeping/config.d/pathnames zu nennen. Hier sollte der imgcache Pfad so angepasst werden, das er vom apache vhost erreichbar ist:
z.B.:

imgcache = /srv/httpd/vhosts/my.domain.de/htdocs/smokeping-data
imgurl   = ../smokeping-data
datadir  = /srv/smokeping

Dieser Ordner sollte natürlich vorher erstellt werden:

mv /var/lib/smokeping/ /srv/
mkdir -p /srv/httpd/vhosts/my.domain.de/htdocs/smokeping-data
chown www-data.root /srv/httpd/vhosts/my.domain.de/htdocs/smokeping-data

und unter folgender URL erreichbar sein:

http://my.domain.de/smokeping/

Nun den Dienst neustarten:

/etc/init.d/smokeping restart

und der erste Test kann erfolgen:
http://my.domain.de/smokeping/smokeping.cgi
Hier sollte dann der Localhost schon auswählbar sein und die ersten Daten liefern.
Wenn dies funktioniert kann man eigene Hosts hinzufügen:
/etc/smokeping/config.d/Targets

+ Internet

menu = Internet
title = Internet Server

++ Laub-Home

menu = Laub-Home
title = Laub-Home
host = www.laub-home.de

++ Heise

menu = Heise
title = Heise
host = www.heise.de

Alarmierungs Mails konfigurieren

Man kann sich von smokeping auch Alarmmails schicken lassen, dies Konfiguriert man in der Datei /etc/smokeping/config.d/Alerts

*** Alerts ***
to = mailto@mydomain.de
from = smokealert@mydomain.de

+bigloss
type = loss
# in percent
pattern = ==0%,==0%,==0%,==0%,>0%,>0%,>0%
comment = suddenly there is packet loss

+someloss
type = loss
# in percent
pattern = >0%,*12*,>0%,*12*,>0%
comment = loss 3 times  in a row

+startloss
type = loss
# in percent
pattern = ==S,>0%,>0%,>0%
comment = loss at startup

+rttdetect
type = rtt
# in milli seconds
pattern = <10,<10,<10,<10,<10,<100,>100,>100,>100
comment = routing messed up again ?

/etc/smokeping/config.d/General

*** General ***

@include /etc/smokeping/config.d/pathnames

# Please edit this to suit your installation
owner    = Your Name
contact  = mailto@mydomain.de
cgiurl   = http://yourhost/cgi-bin/smokeping.cgi
mailhost = localhost
# specify this to get syslog logging
syslogfacility = local0
# each probe is now run in its own process
# disable this to revert to the old behaviour
# concurrentprobes = no

Weitere Überprüfungen

Es gibt noch weitere Checks die man mit smokeping machen kann, zum Beispiel:

  • DNS Antwortzeiten
  • HTTP Antwortzeiten

Hierfür die Tests einfach in die /etc/smokeping/config.d/Probes eintragen:

*** Probes ***

+ FPing

binary = /usr/bin/fping

+ DNS
binary = /usr/bin/dig
lookup = domain-to-lookup.com
pings = 5
step = 180

+ Curl
# probe-specific variables
binary = /usr/bin/curl
step = 60
# a default for this target-specific variable
urlformat = http://%host%/

und unter /etc/smokeping/config.d/Targets aktivieren:

#DNS und HTTP Antwortzeiten
+ services
menu = Service Latency
title = Service Latency (DNS, HTTP)

++ DNS
probe = DNS
menu = DNS Latency
title = DNS Latency

+++ dns1
host = ns1.example.com

++ HTTP
probe = Curl
menu = HTTP Latency
title = HTTP Latency

+++ Wiki-Laub-Home
menu = Wiki Laub-Home
title = HTTP Latency for Wiki Laub-Home
host = wiki.laub-home.de

Nun Dienst neustarten:

/etc/init.d/smokeping restart

Falls es beim restart von smokeping zu folgender Fehlermeldung kommt:

Starting latency logger daemon: smokepingERROR: /etc/smokeping/config.d/Probes, line 15: ERROR: Curl 'binary' /usr/bin/curl does not point to an executable

einfach Curl nachinstallieren:

aptitude install curl

Debugging

Zur Fehleranalyse kann Smokeping im Debug Modus gestartet werden:

/etc/init.d/smokeping stop
smokeping --config /etc/smokeping/config --debug

Quellen