SmokePing is a deluxe latency measurement tool. It can measure, store and display latency, latency distribution and packet loss. SmokePing uses RRDtool to maintain a longterm data-store and to draw pretty graphs, giving up to the minute information on the state of each network connection. 1. Measures latency as well as latency variation. 2. Wide variety of probes, ranging from simple ping to web requests and custom protocols. 3. Advanced alarm system, triggering on configurable 'latency patterns'. 4. Master/slave deployment model to run measurments from multiple sources in parallel. 5. Ajax based graph navigation. 6. Chart mode, to show the most interesting graphs first 7. Plug-able probes, alarms (matchers) and charting function. As Smokeping is a web application, installing it is more involved than ordinary slackbuilds. 0. smokeping needs to run under its own user/group. This has been assigned to the following by SlackBuilds.org, but feel free to change it on your system for consistency with local assignments. User: smokeping UID: 383 GID: 383 group: smokeping GID: 383 You can change pass alternate values for the user and group using SB_USER, SB_GROUP, SB_UID, SB_GID variables when running the build script. 1. Most of smokeping is installed into normal system directories. 2. The web part is installed into /var/www/htdocs/smokeping/ 3. You need to configure a web server to serve the web part. This is a reference nginx setup: location /smokeping/ { client_max_body_size 200M; index smokeping.fcgi; chunked_transfer_encoding off; gzip off; location ~ \.fcgi$ { client_max_body_size 200M; fastcgi_intercept_errors on; include /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME /srv/http/smokeping/smokeping.fcgi; gzip off; fastcgi_buffering off; chunked_transfer_encoding off; fastcgi_pass unix:/run/smokeping-fcgi.sock; } } 4. The above setup relies on the fact that smokeping.fcgi is started as a fastcgi service by spawn-fcgi, rc.smokeping does this for you. Nginx, or whatever webserver you are using, must be in the "smokeping" group to access the /run/smokeping-fcgi.sock socket. 5. Smokeping uses /ect/smokeping/config" as its configuration file. 6. This build ships a Slackware-style init file /etc/rc.d/rc.smokeping , which is not coming from the package itself. So patches welcome. It is, therefore, shipped as a .new file, because you might want to adjust it. 7. This build does not ship a slave init file for distributed setups. Patches welcome. 8. Smokeping has a lot of configuration files, which might tweak its behaviour. Most of these files are installed as .dist, and will be overwritten on update. Ready-to use .conf files are not provided, the user is expected to copy them as needed. The list is: /etc/smokeping/basepage.html.dist -- webpage template /etc/smokeping/tmail.dist -- mail report template /etc/smokeping/smokemail.dist -- some other mail template /etc/smokeping/config.dist -- main configuration file /var/www/htdocs/smokeping/smokeping.fcgi.dist -- fcgi template 9. Smokeping service, _and_ smokeping fcgi service both need access to data files, which are by default in /var/lib/smokeping/. So they both run as the user smokeping. Your webserver should be able to read images from /var/lib/smokeping/images, so you might want to add apache (or whichever user your webserver uses) to the group smokeping. 10. Verify that fcgi works by /usr/bin/spawn-fcgi -n -u smokeping -s /run/smokeping-fcgi.sock -M 660\ -U smokeping -- /var/www/htdocs/smokeping/smokeping.fcgi