OpenBSD Handbook

    Theme
    • Part I. Install & Configure
      • Introduction to OpenBSD
      • Installing OpenBSD
      • The X Window System
      • Networking on OpenBSD
      • System Configuration
      • OpenBSD Basics
      • Managing Software: Packages and Ports
    • Part II. Daily Operations
      • OpenBSD Desktop Environments
      • Multimedia
      • Printing
      • Linux Compatibility
      • Windows Compatibility
      • Games
    • Part III. System Administration
      • Virtualization
      • Storage and File Systems
      • Updating and Upgrading
      • Localization
      • The OpenBSD Boot Process
      • Security
    • Part IV. Networking & Daemons
      • Services
        • Database
          • MariaDB
          • PostgreSQL
          • Redis
          • memcached
        • Directory
          • YP (NIS)
          • LDAP
        • File
          • NFS
          • Samba
        • FTP Services
          • ftpd
          • ProFTPD
          • vsftpd
          • Pure-FTPd
          • TFTP
        • Mail
          • OpenSMTPD Mail Server
          • Dovecot IMAP and POP3 Server
          • Postfix
          • Exim
          • Rspamd
        • Name
          • Unbound DNS Resolver
          • NSD Authoritative DNS Server
          • BIND DNS Server
        • Networking
          • OpenBGPD
          • rad
          • DHCP on OpenBSD
          • slaacd
        • Web
          • Apache HTTP Server
          • nginx Web Server
          • OpenBSD httpd Web Server
          • relayd Reverse Proxy
        • Logging
          • syslogd
        • Monitoring
          • SNMP
        • Remote Access
          • Audit OpenSSH
          • OpenSSH Server
        • File Synchronization
          • rsync
        • Messaging
          • RabbitMQ Message Broker
        • Time
          • NTP Time Synchronization
      • PF
        • pfctl cheat sheet
        • PF Anchors
        • PF Filter Rules
        • PF Forwarding
        • PF Lists and Macros
        • PF Load Balancing
        • PF Logging
        • PF NAT
        • PF Options
        • PF Policies
        • PF Shortcuts
        • PF Tables
      • Advanced Networking
        • High Availability and State Replication
        • Multi-WAN and Policy-Based Routing
        • VPN and Cryptographic Tunneling
        • Classic and Lightweight Tunnels
        • IPv6 at Scale
        • QoS and Traffic Shaping
        • MPLS and Label Distribution
        • Network Services at Scale
        • Virtualization and Host Networking
        • Large-Scale L2 and L3 Design
        • Telemetry, Logging, and Flow Export
        • Hardening and Operational Safety
        • Reference Architectures
        • Troubleshooting Playbooks
      • Serial Communication
    • Part V. Miscellaneous
      • Virtualization Cheat Sheet
      • OpenBSD Cheatsheet
      • How-to Guides
        • Complete the First 30 Minutes After Installation
        • Check Hardware Compatibility Before Installing
        • Bootstrap Wi-Fi Firmware Without Ethernet
        • Set Up OpenBSD as a Laptop or Workstation
        • Configure Laptop Power Management
        • Run OpenBSD as a Virtual Machine Guest
        • Install OpenBSD on a VPS or Cloud Server
        • Install OpenBSD with Full-Disk Encryption
        • Troubleshoot Web Browsers on OpenBSD
        • Create an Administrator Account with doas and SSH Keys
        • Establish a Conservative Security Baseline
        • Manage OpenBSD with Ansible
        • Recover Access and Reset the Root Password
        • Collect OpenBSD Diagnostic Evidence
        • Configure Secure Remote Access with OpenSSH
        • Set Up WordPress on OpenBSD
        • Build Third-Party Software from Ports
        • Use FIDO Security Keys with OpenSSH
        • Build OpenBSD from Source
        • Configure Wi-Fi Roaming and Wired Failover
        • Dual-Boot OpenBSD on a UEFI System
        • Troubleshoot PF, NAT, and Routing
        • Automate OpenBSD Installation with Autoinstall and PXE
        • Route Multiple VLANs with PF
        • Configure a Road-Warrior WireGuard VPN
        • Troubleshoot Package Installation and Update Failures
        • Route IPv6 Networks without NAT
        • Schedule Recurring Maintenance
        • Plan a Docker Workload Migration to OpenBSD
        • Build a Mail Server with OpenSMTPD, Dovecot, and Rspamd
        • Build a Simple Router and Firewall
        • Monitor an OpenBSD System
        • Back Up and Restore an OpenBSD System
        • Configure softraid RAID1
        • Recover an OpenBSD System That Does Not Boot
        • Install Z shell (zsh)
      • OpenBSD for Linux Users
      • OpenBSD for FreeBSD Users
      • OpenBSD for macOS Users
    • OpenBSD FAQ
    • OpenBSD Architectures
      • OpenBSD Package Search

        smokeping-2.9.0p1

        Package search / Categories / OpenBSD 8.0 release
        โ† Back to search
        OpenBSD branch
        OpenBSD 8.0 releaseCurrent snapshot

        OpenBSD 8.0 release ยท amd64

        latency logging and graphing system

        Project homepage: https://oss.oetiker.ch/smokeping/

        Description

        SmokePing is a latency logging and interactive graphing system, for ICMP pings and many other protocols (DNS, SSH, SIP, HTTP and more). The main daemon process organizes latency measurements, records them in an RRDtool database, and optionally sends email alerts based on various criteria. The CGI/FastCGI program presents the graphs and optionally allows remote control via a master/slave protocol (allowing aggregation of data from multiple test locations in a single server).

        Package information

        Ports path
        net/smokeping
        Package architecture
        *
        Maintainer
        The OpenBSD ports mailing-list <ports@openbsd.org>
        Categories
        net
        Available flavors
        None listed

        Ports list build and test dependencies as well as runtime dependencies. pkg_add selects those needed for installation.

        Direct dependencies

        Runtime

        • devel/p5-Config-Grammar
        • net/p5-SNMP_Session
        • net/p5-Socket6
        • net/rrdtool
        • security/p5-Digest-HMAC
        • www/fcgi
        • www/p5-CGI
        • www/p5-CGI-Fast
        • www/p5-LWP-Protocol-https
        • www/p5-libwww
        • net/fping
        • www/spawn-fcgi

        Build

        • devel/p5-Config-Grammar
        • net/p5-SNMP_Session
        • net/p5-Socket6
        • net/rrdtool
        • security/p5-Digest-HMAC
        • www/fcgi
        • www/p5-CGI
        • www/p5-CGI-Fast
        • www/p5-LWP-Protocol-https
        • www/p5-libwww
        • databases/p5-ldap
        • devel/p5-IO-Tty
        • net/p5-Net-DNS
        • net/p5-Net-OpenSSH
        • net/p5-Net-Telnet
        • security/p5-Authen-Radius
        • security/p5-IO-Socket-SSL
        • devel/metaauto
        • devel/autoconf/2.71
        • devel/automake/1.16
        • devel/libtool
        • devel/gmake
        OpenBSD README

        This README contains unresolved ports variables; replace them before using its commands.

        +-----------------------------------------------------------------------
        | Running smokeping on OpenBSD
        +-----------------------------------------------------------------------
        
        Basic configuration
        ===================
        Smokeping is split into two main parts, the daemon (running the probes
        and updating RRD files) and the part responsible for generating website
        graphs.
        
        For the daemon, edit ${SYSCONFDIR}/config (at least add some hosts to
        monitor) and enable it:
        
            rcctl enable smokeping
            rcctl start smokeping
        
        For graph generation, the simplest method is generate static HTML
        and image files from a cron job. This doesn't allow zoom into graphs
        interactively from the browser, but it is easy to configure, more
        secure, and is good enough for many use cases. To do this, add a cron
        job to run this as the _smokeping user (adjust path as necessary):
        
            smokeping --static=/var/www/htdocs/smokeping
        
        Alternatively it can run as a CGI/FastCGI script with a web server.
        A normal installation runs smokeping_fcgi as a daemon and the web
        server is told to communicate with it over a UNIX socket.
        If you wish to use this method, enable the daemon:
        
            rcctl enable smokeping_fcgi
            rcctl start smokeping_fcgi
        
        And configure your web server to access it - here is a sample
        configuration section for use with nginx:
        
            location ~ /smokeping/smokeping.cgi$ {
        	fastcgi_pass	unix:run/smokeping.sock;
        	fastcgi_split_path_info ^(/cgi-bin/[^/]+)(.*);
        	fastcgi_param	PATH_INFO $fastcgi_path_info;
        	fastcgi_param	SCRIPT_FILENAME $fastcgi_script_name;
        	include		fastcgi_params;
            }
        
        Or the httpd(8) in OpenBSD base:
        
            server "example.org" {
        	listen on * port 80
        	location "/smokeping/smokeping.cgi*" {
        	    fastcgi socket "/run/smokeping.sock"
        	    root "/"
        	}
            }
        
        Other probe types
        =================
        Smokeping is most often used to perform ICMP monitoring via fping,
        but has "Probe" modules for other protocols too. Some of these require
        additional packages to be installed:
        
         RADIUS:	   p5-Authen-Radius
         TelnetIOSPing:	   p5-Net-Telnet
         OpenSSHEOSPing:   p5-Net-OpenSSH p5-IO-Tty
         OpenSSHJunOSPing: p5-Net-OpenSSH p5-IO-Tty
         AnotherDNS:	   p5-Net-DNS
         LDAP:		   p5-ldap p5-IO-Socket-SSL
        
        Advanced topic: Heavy load systems
        ==================================
        If problems are seen with excessive load or i/o, it is possible to
        configure Smokeping to use rrdcached instead. This is not needed for
        a typical setup but will typically reduce the amount of data that
        needs to be written to disk (the RRD files are flushed periodically
        according to the command-line flags, allowing some writes to be
        aggregated).
        
        To use this, group permissions should be set to allow Smokeping to
        access the rrdcached socket, and to allow rrdcached to access
        Smokeping's files, e.g.:
        
        	$ grep _smokeping /etc/group
        	_smokeping:*:562:_rrdcached
        	_rrdcached:*:726:_smokeping
        
        	# chgrp -R _rrdcached /var/db/smokeping
        	# chmod -R g+w /var/db/smokeping
        
        The rrdcached daemon must be running:
        
        	# rcctl enable rrdcached
        	# rcctl set rrdcached flags -b /var/db/smokeping -B -m 770 \
        	    -l unix:/var/run/rrd/rrdcached.sock -j /var/db/smokeping/journal \
        	    -p /var/run/rrd/rrdcached.pid
        	# rcctl restart rrdcached
        
        The Smokeping daemon must be told to use rrdcached when writing data.
        This is done by setting an environment variable; add this to /etc/login.conf:
        
        smokeping:setenv=RRDCACHED_ADDRESS=unix\c/var/run/rrd/rrdcached.sock:tc=daemon
        
        Then restart smokeping. Use -d to show more information in case
        of errors at startup.
        
        	# rcctl -d restart smokeping
        
        You can also have Smokeping's FastCGI script use rrdcached when accessing
        data to display. This will be needed in order that it displays the most
        up-to-date information (otherwise it will only see updates that have been
        flushed to disk) and *may* improve performance, however it can also
        result in too much kernel contention (the OpenBSD kernel does not have
        great SMP support for disk access yet) so can actually slow down display.
        Test to see what's best for your system.
        
        To do this, a FastCGI parameter needs to be passed across from your
        web server. For nginx:
        
        fastcgi_param  RRDCACHED_ADDRESS unix:/var/run/rrd/rrdcached.sock;
        
        Or the httpd(8) in OpenBSD base:
        
        param RRDCACHED_ADDRESS "unix:/var/www/run/rrd/rrdcached.sock"
        
        And reload the web server configuration.
        

        Package guides

        • Installing and updating packages

        Package details as JSON

        Report a bug