Skip to main content
Automated reports and alerts that tell us something is wrong before a customer does.

Enterprise OOM Report

Runs that run out of memory end with status MEMORY_LIMIT_EXCEEDED. They are not failed queue jobs, so queue alerts never see them. This report surfaces them so we can reach out with a fix (bigger dedicated workers, flow optimization) before the customer escalates.
  • Runs: as a daily cron job on the DevOps machine, reading the read-only Postgres replica and storing one row per platform per day in ClickHouse.
  • Who: enterprise Cloud platforms only, every platform with at least one OOM run the previous day.
  • Where: one message in the internal Discord channel, one line per platform with OOM runs, flows affected and OOM rate. Nothing is sent on a quiet day.
  • History: the Enterprise OOM Tracker dashboard in HyperDX shows trends and every past day’s report.
  • If it stops: a Betterstack heartbeat alerts when the daily job has not run.

Nightly Benchmark

The Benchmark GitHub Actions workflow (.github/workflows/benchmark.yml) runs every night at 03:00 UTC, once per worker shape (shared and dedicated).
  • Results: each scheduled run stores one row per shape in ClickHouse. The Nightly Benchmark dashboard in HyperDX charts throughput, latency, queue wait and worker resources over time.
  • Regression alert: benchmark/detect-regression.mjs compares the run with the median of the last 14 runs and alerts Betterstack when a metric is more than 5% worse on 2 runs in a row. It stays silent until a shape has 3 runs of history.
  • Pipeline alert: on scheduled runs only, the job’s last step opens a bench-pipeline-<shape> alert in Betterstack when anything in the job failed, and resolves it on the next green scheduled run.
Manual runs (workflow_dispatch) skip the ClickHouse writes and both Betterstack alert steps. A green manual run does not prove these steps work or resolve an existing pipeline alert. Check the next scheduled run after changing them or their secrets.