Setting up Smokeping
Smokeping is a network latency monitor webapp.
Install smokeping and lighttpd from main repository.
apk add smokeping lighttpd
In lighttpd.conf uncomment line: include "mod_cgi.conf", save and exit
Assign cgi to run with /usr/bin/perl in /etc/lighttpd/mod_cgi.conf (by default it's only in cgi-bin virtual host):
cgi.assign = ( ".cgi" => "/usr/bin/perl" )
And uncomment the use of mod.cgi in /etc/lighttpd/lighttpd.conf.
Softlink /usr/share/webapps/smokeping -> /var/www/localhost/htdocs/smokeping
ln -s /usr/share/webapps/smokeping /var/www/localhost/htdocs/smokeping
Softlink /var/lib/smokeping/.simg -> /var/www/localhost/htdocs/img
ln -s /var/lib/smokeping/.simg /var/www/localhost/htdocs/img
If using a version of Alpine older than 2.1_rc2, edit /usr/share/perl5/vendor_perl/Qooxdoo/Services/Tr.pm and on line 34: add "sudo", to beginning so that line looks like:
system "sudo","traceroute","-I","-q","1",$host;
This is because in Alpine, regular user can't run a traceroute
Add sudo package, then add the following to /etc/sudoers using visudo command:
lighttpd ALL=(ALL) NOPASSWD: /usr/bin/traceroute
Change permissions on /var/lib/smokeping/.simg to 777.
chmod 777 /var/lib/smokeping/.simg
Set fping to using setuid:
chmod u+s /usr/sbin/fping
Add hosts to be monitored in /etc/smokeping/config and remove example hosts
The cache configured must be linked to /var/www/localhost/htdocs/smokeping/cache
Set lighttpd to autostart and start the daemon.
rc-update add lighttpd && rc-service lighttpd start
Set smokeping to autostart and start the daemon.
rc-update add smokeping && rc-service smokeping start
For further information on configuration, see the smokeping homepage https://oss.oetiker.ch/smokeping/doc/index.en.html.