kogutdocs

Introduction

What is kogut

Self-hosted server, container, and uptime monitoring in one Rust binary.

kogut monitors servers, containers, and uptime. It runs as one Rust binary with one SQLite file. Optional web app monitoring adds analytics, JavaScript errors, Web Vitals, and deploy reports.

Checks, host metrics, and deploys share a service timeline. Related failures form one incident with likely causes and evidence.

Monitoring scope

  • Servers and containers: host resources, Docker and Podman containers, and systemd units, collected by an agent.
  • Uptime: HTTP, TCP, DNS, and ping checks, also from agents inside private networks. HTTPS checks watch certificate expiry, and domain checks registration expiry.
  • Heartbeats: missed cron jobs, late backups, and reported job failures.
  • Web apps: page views, visitors, Web Vitals, and JavaScript errors, without cookies or browser storage.
  • Deploys: markers from GitHub or CI, with before-and-after reports.
  • Status page: public service status and incidents.

What runs where

kogut serve runs checks, receives data, manages incidents, sends notifications, and serves the panel, the API, and the status page.

kogut agent runs on each monitored Linux host. It connects out and needs no inbound port. kogut edge, an optional Cloudflare Worker, alerts you when kogut stops answering.

Resource use

Measured with scripts/measure-memory.sh on the demo data from scripts/demo.sh --release --agent, on x86_64 Linux: two hosts with a week of history, five checks, about 3,700 page views a day, and one live agent.

x86_64 Linux build from cargo build --releaseSize or memory (RSS)
Binary, with the panel12.2 MB (12,217,024 bytes)
Agent-only binary3.6 MB (3,641,664 bytes)
Server idle21.7 MiB
Server one minute after panel reads33.8 MiB
Server peak during panel reads60.4 MiB
Agent idle8.6 MiB

The panel reads are every screen in every range ten times, first one at a time, then six at a time. These are measurements, not limits.

Resource use compared runs kogut next to Beszel, Uptime Kuma, and other tools with the same 50 checks.

Limits of scope

kogut serves one team. It has no log search, traces, APM, session replay, identified users, or headless-browser checks. Agents attach recent log excerpts to incidents, but kogut is not a log store. It has no plugins, custom dashboards, or arbitrary metric series; see Plugins and custom metrics.