Collector
The Pulsewise collector is a lightweight Go binary that runs on your server as a systemd service. It gathers system metrics at regular intervals and sends them to Pulsewise, giving you real-time visibility into server health.
What is the collector
The collector is designed with minimal resource footprint — it has negligible impact on server performance while continuously monitoring CPU, memory, disk, network, and load averages.
Key features:
- Lightweight Go binary with minimal dependencies
- Runs as a systemd service for reliability
- Automatic start on boot
- Secure communication via HTTPS
- Per-server authentication tokens
Installation
One-click install
The fastest way to install the collector is with the one-click install script:
curl -sSL https://pulsewise.app/install-collector.sh | TOKEN={your-token} sudo -E bash
What the script does:
- Detects your server architecture (x86_64 or ARM64)
- Downloads the appropriate collector binary
- Installs it to
/usr/local/bin/pulsewise-collector - Creates a systemd service (
pulsewise-collector.service) - Configures the API token
- Starts the service automatically
Requirements
| Requirement | Details |
|---|---|
| Operating system | Linux (x86_64 or ARM64) |
| Permissions | Root or sudo access |
| Init system | systemd |
| Network | Outbound HTTPS access to pulsewise.app |
What the collector sends
Each report includes system metrics and information. Metrics are sent at regular intervals, while system information is sent once or when it changes.
System metrics
| Metric | Details |
|---|---|
| Hostname | Server hostname |
| Uptime | System uptime in seconds |
| CPU | Usage percentage and core count |
| Load averages | 1-minute, 5-minute, and 15-minute averages |
| Memory | Total bytes, used bytes, and usage percentage |
| Swap | Total bytes, used bytes, and usage percentage |
| Disks | Per-mount: mountpoint, device, filesystem type, total/free/used space, usage percentage |
| Network | Bytes received and sent per second |
System information
Sent once or when the collector detects a change:
| Field | Example |
|---|---|
| OS | linux |
| Platform | ubuntu |
| Platform version | 22.04 |
| Kernel version | 5.15.0-91-generic |
| Architecture | x86_64 |
| Virtualization | kvm, docker, or empty for bare metal |
| CPU model | Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz |
How it communicates
The collector sends metrics to Pulsewise via POST /api/collect over HTTPS. Each request includes a Bearer token for authentication. The token is unique per server.
Reports are sent at regular intervals. If the server cannot reach Pulsewise, the collector retries on the next interval — no data is queued locally.
Managing the collector
Check status
sudo systemctl status pulsewise-collector
View logs
sudo journalctl -u pulsewise-collector -f
Restart
sudo systemctl restart pulsewise-collector
Stop
sudo systemctl stop pulsewise-collector
Uninstalling
To remove the collector from your server:
sudo systemctl stop pulsewise-collector
sudo systemctl disable pulsewise-collector
sudo rm /etc/systemd/system/pulsewise-collector.service
sudo rm /usr/local/bin/pulsewise-collector
sudo systemctl daemon-reload
Troubleshooting
| Problem | Solution |
|---|---|
| No metrics appearing | Check collector is running (systemctl status), verify token is correct, ensure outbound HTTPS is allowed |
| Stale status in dashboard | Collector may have stopped — check systemctl status and journalctl logs |
| Permission denied during install | Ensure you are running with sudo |
| Architecture not supported | The collector supports x86_64 and ARM64 Linux only |
Regenerating the API token
If you need to regenerate your token (for example, if it has been compromised), do so from the Server Pulse dashboard.
After regenerating:
- Update the token in the collector's configuration
- Restart the service:
sudo systemctl restart pulsewise-collector
The old token is invalidated immediately.