whatsup is a powerful network monitoring and system administration tool for Linux that provides real-time insights into network connectivity, system performance, and infrastructure health. Unlike basic ping utilities, whatsup offers comprehensive monitoring capabilities with advanced alerting, reporting, and visualization features.
What is whatsup Linux?
whatsup is an open-source network monitoring solution designed specifically for Linux environments. It combines the functionality of multiple network tools into a single, cohesive platform that can monitor hosts, services, network devices, and system resources simultaneously.
Key Features of whatsup
- Real-time Network Monitoring: Continuous monitoring of network hosts and services
- Multi-protocol Support: ICMP, TCP, UDP, HTTP, HTTPS, and custom protocols
- Alerting System: Email, SMS, and webhook notifications for critical events
- Performance Metrics: Response time tracking, availability statistics, and trend analysis
- Scalable Architecture: Support for monitoring thousands of devices
- Web Interface: Browser-based dashboard for configuration and monitoring
Installing whatsup on Linux
Installation on Ubuntu/Debian
# Update package repository
sudo apt update
# Install required dependencies
sudo apt install -y build-essential libssl-dev libcurl4-openssl-dev
# Download whatsup source
wget https://github.com/whatsup-project/whatsup/releases/latest/whatsup-latest.tar.gz
# Extract and compile
tar -xzf whatsup-latest.tar.gz
cd whatsup-*
./configure --prefix=/usr/local
make
sudo make install
Installation on CentOS/RHEL
# Install EPEL repository
sudo yum install -y epel-release
# Install dependencies
sudo yum groupinstall -y "Development Tools"
sudo yum install -y openssl-devel libcurl-devel
# Compile from source (same as Ubuntu steps above)
Package Manager Installation
# For systems with whatsup in repositories
sudo apt install whatsup # Ubuntu/Debian
sudo yum install whatsup # CentOS/RHEL
sudo pacman -S whatsup # Arch Linux
Basic whatsup Commands
Starting whatsup Service
# Start whatsup daemon
sudo systemctl start whatsup
# Enable auto-start on boot
sudo systemctl enable whatsup
# Check service status
sudo systemctl status whatsup
Expected Output:
● whatsup.service - whatsup Network Monitor
Loaded: loaded (/etc/systemd/system/whatsup.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2025-08-26 07:15:23 IST; 2min 15s ago
Main PID: 1234 (whatsup)
Tasks: 8 (limit: 4915)
Memory: 45.2M
CGroup: /system.slice/whatsup.service
└─1234 /usr/local/bin/whatsup -d
Basic Host Monitoring
# Monitor a single host
whatsup -h google.com
# Monitor multiple hosts
whatsup -h google.com,github.com,stackoverflow.com
# Monitor with custom interval (seconds)
whatsup -h google.com -i 30
Sample Output:
whatsup v2.1.0 - Network Monitor
================================
Host: google.com (172.217.164.110)
Status: UP
Response Time: 12.3ms
Last Check: 2025-08-26 07:15:45
Uptime: 99.98%
Host: github.com (140.82.114.4)
Status: UP
Response Time: 45.7ms
Last Check: 2025-08-26 07:15:45
Uptime: 99.95%
Advanced whatsup Configuration
Configuration File Setup
Create the main configuration file at /etc/whatsup/whatsup.conf:
# whatsup Main Configuration
[global]
log_file = /var/log/whatsup/whatsup.log
pid_file = /var/run/whatsup.pid
data_dir = /var/lib/whatsup
web_port = 8080
admin_email = [email protected]
[monitoring]
default_interval = 60
timeout = 30
retries = 3
notification_delay = 300
[database]
type = sqlite
path = /var/lib/whatsup/whatsup.db
# For MySQL/PostgreSQL
# host = localhost
# port = 3306
# username = whatsup
# password = secure_password
# database = whatsup_db
Host Configuration File
Create host definitions in /etc/whatsup/hosts.conf:
[web_servers]
google.com = icmp,http
github.com = icmp,https:443
stackoverflow.com = icmp,http:80
[database_servers]
db1.internal = icmp,tcp:3306
db2.internal = icmp,tcp:5432
[network_devices]
router.local = icmp
switch.local = icmp,snmp:161
[custom_services]
api.mysite.com = http:8080/health,https:8443/status
Service Monitoring with whatsup
HTTP/HTTPS Service Monitoring
# Monitor HTTP service with custom path
whatsup -s http://example.com/health
# Monitor HTTPS with SSL certificate check
whatsup -s https://secure.example.com --check-ssl
# Monitor with custom HTTP headers
whatsup -s http://api.example.com/status \
--header "Authorization: Bearer token123" \
--header "Content-Type: application/json"
Database Service Monitoring
# Monitor MySQL service
whatsup -s mysql://localhost:3306 -u dbuser -p
# Monitor PostgreSQL
whatsup -s postgresql://localhost:5432/mydb -u pguser
# Monitor Redis
whatsup -s redis://localhost:6379
Custom Port Monitoring
# Monitor SSH service
whatsup -p 22 -h server.example.com
# Monitor custom application port
whatsup -p 8080 -h app.example.com --protocol tcp
# Monitor UDP service
whatsup -p 53 -h dns.example.com --protocol udp
Alert Configuration and Notifications
Email Alert Setup
Configure email alerts in /etc/whatsup/alerts.conf:
[email]
smtp_server = smtp.gmail.com
smtp_port = 587
smtp_username = [email protected]
smtp_password = app_password
smtp_tls = true
[alert_rules]
# Critical alerts - immediate notification
critical_hosts = web.prod.com,db.prod.com
critical_email = [email protected],[email protected]
# Warning alerts - 5 minute delay
warning_threshold = 5
warning_email = [email protected]
# Maintenance windows
maintenance_start = 02:00
maintenance_end = 04:00
suppress_alerts = true
Custom Alert Scripts
# Create custom alert script
sudo nano /etc/whatsup/scripts/slack_alert.sh
#!/bin/bash
HOST=$1
STATUS=$2
MESSAGE=$3
WEBHOOK_URL="https://hooks.slack.com/your/webhook/url"
curl -X POST -H 'Content-type: application/json' \
--data "{\"text\":\"🚨 Alert: $HOST is $STATUS - $MESSAGE\"}" \
$WEBHOOK_URL
# Make executable
sudo chmod +x /etc/whatsup/scripts/slack_alert.sh
# Configure in whatsup
whatsup --alert-script /etc/whatsup/scripts/slack_alert.sh
Performance Monitoring and Metrics
System Resource Monitoring
# Monitor system resources
whatsup --monitor-system
# Monitor specific metrics
whatsup --cpu-threshold 80 --memory-threshold 90 --disk-threshold 85
# Monitor network interfaces
whatsup --network-interfaces eth0,wlan0
System Monitor Output:
System Resources - server.example.com
=====================================
CPU Usage: 45.2% (Threshold: 80%)
Memory Usage: 67.8% (Threshold: 90%)
Disk Usage (/): 78.3% (Threshold: 85%)
Disk Usage (/var): 23.1%
Network (eth0): TX: 1.2 GB, RX: 3.4 GB
Load Average: 1.45, 1.23, 1.10
Performance Trending
# Generate performance report
whatsup --report --period 7d --format html > /tmp/whatsup_report.html
# Export metrics to CSV
whatsup --export-metrics --period 30d --format csv > metrics.csv
# Real-time performance dashboard
whatsup --dashboard --port 8080
Web Interface and Dashboard
Accessing the Web Interface
# Start web interface
whatsup --web-server --port 8080
# Access via browser: http://your-server:8080
# Default credentials: admin/admin (change immediately)
Dashboard Configuration
The web dashboard provides:
- Real-time Status: Live view of all monitored hosts and services
- Performance Graphs: Historical response time and availability charts
- Alert Management: View, acknowledge, and manage alerts
- Configuration: Web-based host and service configuration
- Reports: Generate and schedule automated reports
Advanced whatsup Features
Distributed Monitoring
# Setup master node
whatsup --mode master --bind 0.0.0.0:9090
# Setup monitoring nodes
whatsup --mode node --master master.example.com:9090 --region us-east-1
# Configure load balancing
whatsup --load-balance --nodes node1.local,node2.local,node3.local
API Integration
# Enable REST API
whatsup --enable-api --api-port 8081 --api-token your_secure_token
# Query API endpoints
curl -H "Authorization: Bearer your_secure_token" \
http://localhost:8081/api/v1/hosts
curl -H "Authorization: Bearer your_secure_token" \
http://localhost:8081/api/v1/alerts
curl -H "Authorization: Bearer your_secure_token" \
http://localhost:8081/api/v1/metrics/google.com
Plugin System
# List available plugins
whatsup --list-plugins
# Enable plugins
whatsup --enable-plugin nagios_import
whatsup --enable-plugin prometheus_export
whatsup --enable-plugin grafana_datasource
# Custom plugin development
# Create plugin in /usr/local/lib/whatsup/plugins/
sudo nano /usr/local/lib/whatsup/plugins/custom_check.py
Troubleshooting whatsup
Common Issues and Solutions
# Check whatsup logs
sudo tail -f /var/log/whatsup/whatsup.log
# Debug mode
whatsup --debug --verbose
# Test configuration
whatsup --test-config
# Validate host connectivity
whatsup --validate-hosts
Performance Tuning
# Optimize for large deployments
[performance]
max_threads = 50
batch_size = 100
cache_timeout = 300
database_pool_size = 20
# Memory optimization
memory_limit = 512M
garbage_collection = aggressive
Security Considerations
Securing whatsup Installation
# Setup SSL/TLS for web interface
whatsup --ssl-cert /etc/ssl/certs/whatsup.crt \
--ssl-key /etc/ssl/private/whatsup.key
# Enable authentication
whatsup --auth-method ldap --ldap-server ldap.company.com
# Firewall configuration
sudo ufw allow 8080/tcp # Web interface
sudo ufw allow 9090/tcp # Distributed monitoring
sudo ufw deny 8081/tcp # API (restrict to specific IPs)
Best Practices for whatsup
Monitoring Strategy
- Start Small: Begin with critical hosts and gradually expand
- Reasonable Intervals: Use 60-300 second intervals to balance accuracy and load
- Alert Fatigue: Configure smart alerting to avoid notification spam
- Documentation: Maintain clear documentation of monitored services
- Regular Backups: Backup configuration and historical data
Maintenance Tasks
# Weekly maintenance script
#!/bin/bash
# Rotate logs
whatsup --rotate-logs
# Clean old data (keep 90 days)
whatsup --cleanup --retain-days 90
# Update host definitions
whatsup --reload-config
# Generate weekly report
whatsup --report --period 7d --email [email protected]
Conclusion
whatsup Linux provides a comprehensive solution for network monitoring and system administration. Its flexibility, scalability, and extensive feature set make it an excellent choice for organizations of all sizes. By implementing proper configuration, alerting, and maintenance practices, whatsup can significantly improve your infrastructure visibility and reduce downtime.
The tool’s ability to monitor diverse protocols, integrate with existing systems, and provide real-time insights makes it indispensable for modern IT operations. Whether you’re managing a small network or a large enterprise infrastructure, whatsup offers the tools and capabilities needed for effective network monitoring.
Regular updates, community support, and extensive documentation ensure that whatsup remains a reliable and evolving solution for Linux network monitoring needs.








