Prometheus quietly collects numbers about your server and apps every 15 seconds, like memory, disk and traffic, and keeps them so Grafana can draw them. You'll rarely open it yourself.
On this page
At a glance#
- What it is
- Monitoring and Alerting Monitoring
- Where it opens
- Web Interface
On its own port at
http://your-server:port, orprometheus.your-domainonce you have a domain - Updates
- Automatic A backup is taken first, and it rolls back if the update fails
- Backups
- Included Part of the daily backup when that's switched on
- Copies
- As many as you like Run several copies, each with its own data
What it's good for#
Prometheus is the part of a monitoring setup that nobody looks at. Every 15 seconds it asks your server and your apps how they're doing (how much memory and processor they use, how full the disks are, how much traffic goes in and out) and writes the answers down. Keep that up for a few weeks and you can answer questions like "when did the disk start filling up?" or "which app ate all the memory on Tuesday night?"
It's paired with Grafana, which turns those numbers into dashboards. Grafana won't install until Prometheus is there, because it would have nothing to show. If you only want to know whether each app is up, Uptime Kuma is the simpler tool; Prometheus and Grafana are for how well things are running, over time.
What it collects#
Out of the box, with nothing to switch on, Prometheus collects three things:
- The server itself: processor, memory, disks and network. A small companion called node-exporter reads these.
- Every container: how much processor, memory and network each part of each app uses. Another companion, cAdvisor, reads these.
- Prometheus itself, so you can tell if it's struggling.
Adding your apps#
Some apps can report their own, more detailed numbers too: Traefik's requests and errors, for example, or AdGuard Home's and Unbound's DNS queries. Each of those has an Export metrics to Grafana switch in its settings, which can be turned on once Prometheus and Grafana are both installed.
Turn it on for an app and LibrePortal does the rest: it tells Prometheus to collect from that app and gives Grafana a dashboard for it. Turn it off and both go away again. Prometheus's Works with row says how many apps it's collecting from, and each app's own row says whether its metrics are being collected.
Looking at the data#
Grafana is the place to look. Prometheus's own Web Interface is handy for checking things work, though. Its Status → Targets page lists everything it collects from and whether each one answered the last time it asked. A target marked down usually means that app is stopped.
Good to know#
- It's private. Prometheus has no login, and its page shows every number it collects about your server and apps. So from 0.4.7 it installs Private, reachable only from your trusted places. Grafana reaches it over LibrePortal's internal network, so it keeps working whatever you choose here.
- Installed with 0.4.6 or earlier? Then it started Public, and an update doesn't change that. Open Prometheus's Network tab, choose Private under Who can reach it, and press Apply.
- It keeps 15 days. That's Prometheus's own default, and LibrePortal doesn't change it. Older data is dropped as new data comes in, so its disk use levels off rather than growing for ever.
- The companions look at the whole machine. node-exporter reads the host's filesystems and cAdvisor reads Docker's, both read-only. That's how they see the server rather than just their own container.
- Updates are automatic, and it's included in backups.
Addresses and ports#
Prometheus has one port. LibrePortal picks a free port number for each when you install, so yours will differ from anyone else's. The Config tab's Network section shows them, and the app's Open button uses the right one.
| What it is | Who can reach it | With a domain |
|---|---|---|
| Web Interface | Trusted places only | prometheus.your-domain |
Settings#
In its config file#
Prometheus's own settings aren't on the Config tab yet. They live in the app's config file, described here so you know they exist. How to change them.
| Setting | What it does | Starts as |
|---|---|---|
NameCFG_PROMETHEUS_DISPLAY_NAME |
What this app is called on your dashboards. Leave empty to use its usual name | Empty |
Show on the LibrePortal DashboardCFG_PROMETHEUS_SHOW_ON_DASHBOARD |
Whether this app gets a shortcut on the front page of the LibrePortal WebUI, separate from any Dashy dashboard Choices: true, false |
false |
Detailed logsCFG_PROMETHEUS_VERBOSE_LOGS |
Whether Prometheus writes its normal, chattier logs, including who connected, instead of only warnings and errors. Choices: true, false |
false |
Debug logging for 24 hoursCFG_PROMETHEUS_DEBUG_LOGS |
Turn on to see everything Prometheus is doing while you look for a problem; it turns itself off after 24 hours. Choices: true, false |
false |
Works with#
These are the other apps Prometheus knows how to work with. Once it's installed, its page shows the same list with whether each one is connected. How this works.
- App metrics: Collects metrics from the apps that can export them. LibrePortal sets this up by itself when both are installed.
Every app you install
- Grafana: Shows dashboards for the apps that have one. works with every app
- Grafana: Reads what Prometheus collects.
- Home Assistant: Prometheus collects Home Assistant's sensor history.
- Uptime Kuma: Watches your apps and shows when one goes down. works with every app
Privacy and security#
All clear Prometheus measures your own server and stores the numbers locally. It sends nothing out, and it has no login, so it stays private.
What leaves this server#
Nothing leaves this server on its own.
What LibrePortal turns off#
Nothing needed switching off.
Licence: Apache-2.0 (all three). Audited: 21 October 2026. See the privacy of every app and the Promise.
Sources#
Under the hood#
- It runs these images:
prom/prometheus:v3.15.0@sha256:efd719c99d83b060d9daefdcf00360461adf279f45ef5391f8d111892118753e,prom/node-exporter:v1.12.1@sha256:1b4e4438faca4dd7e001dd445d161a4a2091b0fededa84093b3a8dfeae1f1be0,gcr.io/cadvisor/cadvisor:v0.55.1@sha256:3de2bd5203120b866d74a9b283b2ffb8ec382fbf9dc321814700c6ea6f44ec57. - It can sit behind Authelia's sign-in once Authelia is installed.
- Its own project and documentation: github.com/prometheus/prometheus
Ports, settings, tools and connections on this page are read from LibrePortal v0.10.97's app catalogue each time the guide is built.