Introduction
Nezha is a self-hosted server monitoring tool that tracks CPU, memory, disk, network, and uptime across multiple hosts from a single dashboard. It uses a lightweight agent on each monitored server and provides alerting, traffic statistics, and service availability checks.
What Nezha Does
- Monitors system metrics (CPU, RAM, disk, bandwidth) across unlimited servers
- Tracks website and service uptime with HTTP, TCP, and ICMP probes
- Sends alerts via Telegram, Discord, Slack, email, and webhook integrations
- Displays real-time and historical data on a responsive web dashboard
- Supports custom scripts and scheduled tasks on remote agents
Architecture Overview
Nezha consists of a central dashboard (Go backend with a web UI) and lightweight agents installed on each monitored host. Agents report metrics via gRPC to the dashboard, which stores data in a local SQLite or PostgreSQL database. The dashboard serves the frontend and handles notification dispatch.
Self-Hosting & Configuration
- Install the dashboard on any Linux VPS with the one-line script
- Agents support Linux, Windows, macOS, and FreeBSD
- Authenticate via GitHub, Gitee, or Cloudflare Access OAuth
- Configure notification rules with flexible threshold conditions
- Optional Cloudflare Tunnel support for agent connections behind NAT
Key Features
- Lightweight agents with minimal resource footprint (under 10 MB RAM)
- Multi-language dashboard supporting English, Chinese, and more
- Custom themes and branding for the public status page
- API access for integrating monitoring data into other systems
- Geo-distributed deployment with agent grouping and tagging
Comparison with Similar Tools
- Uptime Kuma — focused on uptime checks only; Nezha adds full server metrics
- Netdata — per-host detailed metrics; Nezha provides a centralized multi-server overview
- Grafana + Prometheus — powerful but complex stack; Nezha is simpler to deploy
- Hetrix Tools — SaaS monitoring; Nezha is fully self-hosted and free
- Beszel — newer lightweight monitor; Nezha has a more mature ecosystem
FAQ
Q: How many servers can Nezha monitor? A: There is no hard limit; users report running hundreds of agents on a single dashboard instance.
Q: Does the agent expose sensitive data? A: Agents only report system metrics. No process lists or file contents are transmitted.
Q: Can I use Nezha as a public status page? A: Yes, the dashboard includes a customizable public-facing status page with uptime graphs.
Q: What databases does the dashboard support? A: SQLite (default, zero-config) and PostgreSQL for larger deployments.