# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4 PortSystem 1.0 PortGroup perl5 1.0 name smokeping version 2.8.2 revision 2 license GPL-2+ categories net perl maintainers nomaintainer description A deluxe latency logging and graphing system. long_description 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. supported_archs noarch platforms {darwin any} homepage https://oss.oetiker.ch/smokeping/ master_sites ${homepage}pub/ checksums rmd160 9829aa97cdc8179a303247fc84849e5b25caf6df \ sha256 29e61118b455e23b969ada5f8e2ab432d3e2ef87d4afe2c86de4a03d7188b6ea \ size 582311 patchfiles patch-Makefile.in.diff \ patch-etc-config.dist.in.diff \ patch-bin-smokeping.diff \ patch-bin-smokeping_cgi.diff \ patch-bin-tSmoke.diff \ patch-bin-smokeinfo.diff perl5.branches 5.34 depends_lib-append port:perl${perl5.major} \ port:p${perl5.major}-authen-radius \ port:p${perl5.major}-cgi-fast \ port:p${perl5.major}-config-grammar \ port:p${perl5.major}-html-tagset \ port:p${perl5.major}-io-html \ port:p${perl5.major}-io-tty \ port:p${perl5.major}-libwww-perl \ port:p${perl5.major}-mozilla-ca \ port:p${perl5.major}-net-dns \ port:p${perl5.major}-net-ip \ port:p${perl5.major}-net-openssh \ port:p${perl5.major}-net-radius \ port:p${perl5.major}-net-snmp \ port:p${perl5.major}-net-telnet \ port:p${perl5.major}-perl-ldap \ port:p${perl5.major}-pathtools \ port:p${perl5.major}-snmp_session \ port:p${perl5.major}-xml-sax-base \ port:mod_fcgid \ port:apache2 \ port:rrdtool \ port:fping \ port:curl set smokedata ${prefix}/var/smokeping set smokeetc ${prefix}/etc/smokeping configure.perl ${perl5.bin} configure.args-append \ --sysconfdir=${smokeetc} \ --with-htdocs-dir=${prefix}/www/smokeping configure.env-append \ PERL5LIB=${perl5.lib} startupitem.create yes startupitem.name smokeping startupitem.executable \ ${prefix}/bin/smokeping --nodaemon post-patch { reinplace "s|__PREFIX__|${prefix}|g" \ ${worksrcpath}/bin/smokeping \ ${worksrcpath}/bin/tSmoke \ ${worksrcpath}/bin/smokeinfo \ ${worksrcpath}/bin/smokeping_cgi reinplace "s|__PERL5__ARCHLIB__|${perl5.archlib}|g" \ ${worksrcpath}/bin/smokeping \ ${worksrcpath}/bin/tSmoke \ ${worksrcpath}/bin/smokeinfo \ ${worksrcpath}/bin/smokeping_cgi reinplace "s|/usr/bin/|${prefix}/bin/|g" \ ${worksrcpath}/lib/Smokeping.pm \ ${worksrcpath}/lib/Smokeping/Examples.pm \ ${worksrcpath}/lib/Smokeping/probes/Curl.pm \ ${worksrcpath}/lib/Smokeping/probes/RemoteFPing.pm \ ${worksrcpath}/lib/Smokeping/probes/SSH.pm \ ${worksrcpath}/lib/Smokeping/probes/FPing6.pm \ ${worksrcpath}/lib/Smokeping/probes/EchoPing.pm \ ${worksrcpath}/lib/Smokeping/probes/FPing.pm reinplace "s|/usr/share/smokeping/etc|${smokeetc}|g" \ ${worksrcpath}/lib/Smokeping/probes/passwordchecker.pm } post-destroot { # Create the configuration directory xinstall -m 755 -d ${destroot}${smokeetc} # Create and retain the data directory xinstall -m 755 -d ${destroot}${smokedata}/log destroot.keepdirs ${destroot}${smokedata}/log } notes \ " #### To complete the Smokeping installation #### 1) Enable mod_fcgid (installed as a dependency of Smokeping) for MacPorts Apache 2. -Rdd the line below to ${prefix}/etc/apache2/httpd.conf. LoadModule fcgid_module modules/mod_fcgid.so 2) Changes to httpd.conf for Smokeping. -Uncomment this line to enable the CGI script handler. AddHandler cgi-script .cgi -Add a directive for Smokeping's data directory and add smokeping.cgi to DirectoryIndex for a simple /smokeping url. Alias /smokeping \"${prefix}/var/smokeping\" Allow from all Options ExecCGI DirectoryIndex index.html smokeping.cgi 3) Set Smokeping data directory permissions to the Apache user and group set in httpd.conf. The default Apache user and group for OS X is www. sudo chown -R : ${smokedata}/ 4) Setup Smokeping logging. -Add this statement to /etc/syslog.conf. local1.* ${smokedata}/log/smokeping.log -Create a logfile to receive the log messages. cd ${smokedata}/log sudo touch smokeping.log sudo chmod 600 smokeping.log sudo chown root:admin smokeping.log -Then restart the syslog facility. sudo kill -HUP `cat /var/run/syslog.pid` 5) Rename and edit the ${smokeetc}/config sample files, then test your config file. -Remove the .dist extension from all files; do not change the filenames. cd ${smokeetc} sudo cp basepage.html.dist basepage.html sudo cp config.dist config sudo cp smokemail.dist smokemail sudo cp smokeping_secrets.dist smokeping_secrets sudo cp tmail.dist stmail -Set the DNS names for the Smokeping config file url's \"imageurl\" and \"cgiurl\". But you should leave all file paths alone -they are set by MacPorts. imgurl = http://myhost.mycompany.com/smokeping cgiurl = http://myhost.mycompany.com/smokeping/smokeping.cgi -Customize variables. * General * - owner, contact, and mailhost * Alerts * - to, from addresses -Then clear the examples \(they have a leading '+'\) in the *** Targets *** section and set your own. + My Web Server menu = MyWebServer title = My Web Server host = mywebserver.mydomain.com alerts = bigloss,someloss,startloss -See sample configurations and examples in ${prefix}/share/doc/smokeping/. -Perform a config file test from a terminal window and correct any errors that are reported. smokeping --check 6) Start Smokeping and verify it is running. (Give it a minute to start) sudo launchctl load -w /Library/LaunchDaemons/org.macports.smokeping.plist ps -ax |grep smoke 1713 Ss 0:00.16 ${prefix}/bin/smokeping \[FPing\] 1753 Ss 0:00.18 ${prefix}/bin/speedy_backend -w ${prefix}/www/smokeping/smokeping.cgi 1754 S 0:01.56 ${prefix}/bin/speedy_backend -w ${prefix}/www/smokeping/smokeping.cgi 7) Check the Smokeping graphs with a web browser. Go to http://localhost/smokeping 8) Add or remove targets from Smokeping. After adding or removing targets from ${smokeetc}/config, you must reload Smokeping from a terminal window. sudo smokeping --reload"