FAQ
I lost the password
Section titled “I lost the password”Ask another administrator first: in Settings → Users, Edit on your account sets a new password and shows it once, and Reset 2FA on the same row clears a second factor that locks you out. That is the everyday answer — an instance with two admin accounts never needs the rest of this page.
When nobody can sign in any more, there is no recovery e-mail: start the
server once with DUMBMONIT_RESET_PASSWORD=1, set in docker-compose.yml:
environment: DUMBMONIT_RESET_PASSWORD: "1"Then docker compose up -d.
Every account and every session is removed at startup and the UI shows
/setup again. Create the first administrator, then start again without the
line, and run docker compose up -d again. Monitors, rules, channels and the single sign-on settings are
untouched.
No data after adding a monitor
Section titled “No data after adding a monitor”Give it a minute: the first probe runs at the monitor’s interval (60 s by
default) and writes reach VictoriaMetrics every 5 seconds
(DUMBMONIT_FLUSH_INTERVAL_SECS). Then:
- Open the monitor page and click Probe now. It reports how many samples and series one probe produced, or the exact error.
- Misconfigured with an error under the address is a configuration problem: wrong community or password, refused certificate (enable “Accept an unverifiable certificate”), missing capability. It is shown, not alerted.
- Unreachable with no error means the monitor did not answer at all. For SNMP, a wrong community looks exactly like a monitor that is off, because the monitor never answers it. Check the community, that SNMP is enabled, and that the monitor allows the server’s address.
- Check that the container can reach the monitor: Docker networks and firewalls are the usual culprits.
Ping says “configuration error”
Section titled “Ping says “configuration error””The ping monitor needs an ICMP echo socket. The container runs without any
capability, so the Compose file allows those sockets with the
net.ipv4.ping_group_range sysctl under the dumbmonit service: make sure
the sysctls: lines are still there, then docker compose up -d. See
ICMP ping without a capability.
The agent does not appear
Section titled “The agent does not appear”- The installer does a test push before starting the service and stops with an
explicit error if the URL or token is wrong. Fix
/etc/dumbmonit/agent.yamland restartdumbmonit-agent. - The URL in the install command is the one your browser used to reach the UI.
From the monitored machine, that URL must reach the server:
curl https://server:8080/api/healthfrom there tells you. - Behind a reverse proxy,
/api/ingestmust be forwarded and bodies of up to 16 MB allowed (client_max_body_size 16min nginx). journalctl -u dumbmonit-agent -fshows every rejected push. The token itself never appears in the log.- A revoked token stops the agent at its next push; re-run the installer with a new token.
See Linux, macOS, FreeBSD and Windows agent.
Changing the port
Section titled “Changing the port”The container listens on 8080; the host port is the left side of the mapping in
docker-compose.yml. Edit it, then run docker compose up -d:
ports: - "8099:8080"To change the port inside the container, set DUMBMONIT_BIND, for example
0.0.0.0:9000, and adjust the port mapping.
Why is the alert “Advisory” when the rule says “warning”?
Section titled “Why is the alert “Advisory” when the rule says “warning”?”The API stores three severities: info, warning, critical. The interface
displays them with the weather bulletin’s words: Info, Advisory, Warning. See
Severities.
An alert is “Suppressed by parent”
Section titled “An alert is “Suppressed by parent””The monitor has a parent monitor that is down (unreachable, or its availability check is failing), so its own alerts are held back rather than sent. Fix the parent; the child’s alerts resolve or fire on their own afterwards without a second notification. See Dependency suppression.
“Unusual CPU” never fires
Section titled ““Unusual CPU” never fires”It is a seasonal baseline that stays silent for its first 14 days on each series. During that time it only shows what it would have fired. See Baseline learning.
Can I use my own VictoriaMetrics?
Section titled “Can I use my own VictoriaMetrics?”Yes: set DUMBMONIT_VM_URL to its address (http://host:8428) and the
embedded VictoriaMetrics is not started. Every metric is prefixed
dumbmonit_, so it can share the instance with other tools. GET /api/health
reports victoria.embedded: false once the switch is done.
Does DumbMonit need to be reachable from the internet?
Section titled “Does DumbMonit need to be reachable from the internet?”No. It reaches out to monitors and to notification services; nothing calls back, except agents, which need to reach the server’s URL. Keep it on your LAN or behind a VPN; if you expose it, use a reverse proxy with a public certificate that talks HTTPS to DumbMonit (HTTPS and encryption).
Is there an API token?
Section titled “Is there an API token?”Yes. Settings → API & assistants creates dmt_… tokens with a read or
write scope; send one as Authorization: Bearer dmt_… on any route and
no cookie or CSRF header is needed. The same token connects an
assistant through MCP. Tokens never manage accounts,
sign-in settings or other tokens. See the
HTTP API reference.