stackapRequest access

Product

Monitoring

Stackap runs a set of health checks on the server and every project, sends an alert when one fails, and records the load time of every project's requests.

What it does

These checks run continuously: host CPU, memory and disk, the Postgres server, running containers, database backups, repository backups, TLS certificates, recent deployments, and scheduled jobs. Each reports ok, warn or fail with a one-line detail, and the platform summarizes them as one overall state.

When a check fails, an alert goes to a Telegram chat, and it repeats every six hours until the check is ok again, so a missed message is not a missed problem. The platform operator can read the current alerts through the API.

Separately, every project gets load-time metrics. The web server in front of the apps writes an access log, which is turned into per-project request counts and a latency histogram, from which the median and slower percentiles are estimated. Ranges of one hour, 24 hours and seven days are available, and each deployment gets its own summary so you can see whether a release made things slower.

How it works

Metrics are bucketed finely at the low end on purpose, because a fast app answers in a few milliseconds and coarse buckets made a fast app look slower than it was. Percentiles are estimates read from the histogram, not exact values.

In practice

$ stackap status        # platform operators only
GET /v1/projects/my-app/metrics?range=24h

Early-access scope

Questions

Does it tell me when a deploy fails?
Yes. A failed build or an unhealthy deployment shows up in the deployments check and in the project's timeline, and the previous version keeps serving.
Can I see load time in the dashboard?
Yes, per project, with a range selector. The same numbers are available from the metrics endpoint.

Stackap is in early access. Tell us what you run and we will reply with a straight answer about whether it fits.

Ask for an invitation

Last updated .