Skip to content
PVRLabsPublic

About

Lightweight self-hosted application monitoring for small servers. Spring Boot, Micronaut, Quarkus, SQLite-backed history, simple charts. No Prometheus/Grafana stack required.

Topics

Resources

Stars

191 stars

Watchers

2 watching

Forks

Repository files navigation

StatLite

GitHub release CI License Frameworks: Spring Boot · Quarkus · Micronaut Go

StatLite provides lightweight, self-hosted application monitoring for apps running on VPSs and small servers. One Go binary polls multiple applications, stores metrics locally in SQLite, and provides built-in historical charts, without requiring Prometheus or Grafana.

🌐 Website · 👀 Interactive demo

StatLite dashboard monitoring a Spring Boot payments API
Main application dashboard for the Spring target.

StatLite supports Spring Boot, Quarkus, and Micronaut integrations, and other applications through a small, fixed JSON metrics endpoint. It collects traffic, latency, CPU, memory, optional application health, and optional host metrics. Metrics and history stay on your server, without continuously sending application metrics to a third-party monitoring SaaS.

StatLite is built for resource-constrained servers. Low memory, CPU, disk, and operational overhead are treated as product constraints.

Learn how to set up lightweight Spring Boot monitoring without Prometheus and Grafana.

StatLite focuses on predefined application and host metrics with built-in charts. See monitoring options for capabilities, limitations, and tradeoffs.

Install

Install the latest release on macOS or Linux:

curl -fsSL https://raw.githubusercontent.com/PVRLabs/statlite/main/install.sh | sh

Follow any PATH instructions printed by the installer.

Or install with Homebrew:

brew install pvrlabs/tap/statlite

For Windows, see the Windows guide.

See Installation for supported platforms, custom install locations, source builds, and server-wide Linux setup.

Try it

On macOS or Linux, curl and Homebrew install only the binary. First save the self-monitoring configuration as statlite.yaml in your current directory, then run:

statlite

Open http://127.0.0.1:9090. This configuration monitors StatLite itself; allow a few polling intervals for history to appear.

Try with Docker

Run StatLite using the official Docker image (linux/amd64 and linux/arm64):

docker run --rm \
  -p 127.0.0.1:9090:9090 \
  docker.io/pvrlabs/statlite:latest

Open http://127.0.0.1:9090. This monitors StatLite itself; history is discarded when the container is removed.

See the Docker guide for monitoring applications, persistent storage, and networking.

Configure an application

If StatLite is already running, press Ctrl+C before continuing.

With the native executable, inspect a running Spring Boot application with Actuator health and metrics exposed (see the Spring Boot quickstart):

statlite inspect 'http://localhost:8080' --create-config ./spring.yaml
statlite --config ./spring.yaml

Open http://127.0.0.1:9090. Send some requests to your application and allow a few polling intervals to see traffic, latency, and JVM memory.

For other frameworks, existing configurations, and manual setup, see Configuration and Supported integrations.

Important

StatLite has no built-in dashboard or API authentication. Review the server and access guidance before exposing it remotely.

For applications behind Caddy, configure native Caddy HTTP monitoring with an exact metrics URL and host. It observes HTTP traffic without application instrumentation.

Supported metric sources

StatLite collects application health, traffic, latency, CPU, and memory metrics, depending on the integration.

  • Spring Boot: Actuator health, request metrics, JVM heap, process CPU, and optional host metrics. Supports Micrometer Prometheus and Actuator JSON.
  • Quarkus: Request, latency, CPU, JVM heap, and process metrics through Micrometer Prometheus/OpenMetrics. Optional SmallRye Health.
  • Micronaut: Request, latency, CPU, JVM heap, and process metrics through Micrometer Prometheus. Optional management health.
  • StatLite Metrics v1: A small JSON endpoint for applications in any language. Integration guides cover FastAPI, Express, Django, Go net/http, and Gin.

StatLite and its integration helpers send no telemetry to external collection services. StatLite polls your configured endpoints, and metrics remain under your control.

See Supported integrations for details.

Documentation

License

MIT

About

Lightweight self-hosted application monitoring for small servers. Spring Boot, Micronaut, Quarkus, SQLite-backed history, simple charts. No Prometheus/Grafana stack required.

Topics

Resources

Stars

191 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages