Skip to content

Quick start

Go from an empty account to live server metrics in about five minutes: add a server in the dashboard, run one command on it, and the first metrics arrive about a minute later.

You need:

  • A Linux server (x86_64 or arm64) you can access as root. The collector is Linux-only.
  • Outbound HTTPS from that server. The collector pushes metrics out; no inbound ports are opened.

Open app-mon.ok9k.com and continue with Google, GitHub, or your email address. There is no password: with email, Monitorable sends you a message containing a sign-in link and a 6-digit code — click the link, or enter the code and click Verify Code. The link and code expire after 15 minutes.

Signing in for the first time creates your account.

Empty dashboard with the Add Server button in the Server Overview card

  1. Open the Servers page and click Add Server. (The empty dashboard’s Add Server button takes you there.)
  2. Enter a name — this is only the label the dashboard shows, so it doesn’t need to match the server’s hostname — and click Add Server.
  3. The Install the collector dialog appears with a one-line install command. It embeds this server’s API key and is shown only once, so copy it before closing the dialog.

Install the collector dialog showing the one-line install command with a copy button

If you close the dialog without copying, remove the server (Remove Server in the server card’s actions menu) and add it again to get a fresh command.

Paste the copied command into a root shell on the server you want to monitor. It has this shape:

Terminal window
curl -fsSL https://get-mon.ok9k.com/install.sh | sudo sh -s -- --endpoint=https://ingest-mon.ok9k.com --api-key=<your-api-key>

The install script creates an unprivileged monitorable system user, downloads the collector binary and its configuration, and starts it as the systemd service monitorable-collector.service:

=🚀 Monitorable OpenTelemetry Collector Installer
=================================================
Endpoint: https://ingest-mon.ok9k.com
Version: latest
Detected platform: linux/amd64
Collector URL: https://get-mon.ok9k.com/binaries/otel/latest/monitorable-otelcol-linux-amd64
=👤 Creating user and group...
Creating group: monitorable
Creating user: monitorable
=📁 Creating directories...
=🔒 Setting up permissions...
=📦 Downloading Monitorable OpenTelemetry Collector...
✅ Monitorable OpenTelemetry Collector installed
=⚙️ Downloading configuration file...
✅ Configuration file downloaded
=⚙️ Downloading launcher...
✅ Launcher installed
=🔧 Setting up systemd service...
=▶️ Starting service...
✅ Service started successfully!
🎉 Installation complete!

After the summary, the script prints the service status and the commands for viewing logs (journalctl -u monitorable-collector -f) and restarting the service (systemctl restart monitorable-collector).

Back in the dashboard, open your server’s page. About 60 seconds after the install script finishes, the server’s status flips to Online and the CPU, memory, and load panels draw their first points. Charts fill out as data accumulates — give it a few minutes.

Server page shortly after install: status Online, system summary, and CPU chart with the first minutes of data

Two panels depend on what the collector finds: Docker containers appear only when Docker is installed, and SMART disk health only on bare-metal servers — virtual machines don’t expose physical drives.

Adding your first server also sets up alerting: your account gets a Default alert template (11 of 18 rule types enabled) and an Account email notification channel that points at your sign-in address. When a rule fires, the incident appears under Alerts and you get an email — there is nothing to configure for that. How alerting works covers templates, reminders, and acknowledgment.

To route alerts elsewhere (Telegram, Discord, Slack, PagerDuty, webhook, or ntfy), go to Alerts → Channels and click Add channel — see Notification channels.

Check the service on the server:

Terminal window
systemctl status monitorable-collector

If it shows active (running), watch the logs for delivery errors and confirm the server can reach https://ingest-mon.ok9k.com over HTTPS:

Terminal window
journalctl -u monitorable-collector -f

No data appearing walks the full checklist, including what the delivery-error log lines mean.