Collector

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:

  1. Detects your server architecture (x86_64 or ARM64)
  2. Downloads the appropriate collector binary
  3. Installs it to /usr/local/bin/pulsewise-collector
  4. Creates a systemd service (pulsewise-collector.service)
  5. Configures the API token
  6. 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:

  1. Update the token in the collector's configuration
  2. Restart the service: sudo systemctl restart pulsewise-collector

The old token is invalidated immediately.