Skip to content

docs: add API monitoring options writeup BDMS-1023 - #772

Merged
jirhiker merged 3 commits into
stagingfrom
docs/api-monitoring-options
Jul 9, 2026
Merged

docs: add API monitoring options writeup BDMS-1023 #772
jirhiker merged 3 commits into
stagingfrom
docs/api-monitoring-options

Conversation

@jirhiker

@jirhiker jirhiker commented Jul 7, 2026

Copy link
Copy Markdown
Member

Adds docs/api-monitoring-options.md — a reference survey of production API monitoring options for OcotilloAPI.

🤖 Generated with Claude Code

Reference doc surveying production API monitoring options for OcotilloAPI.
Force-added because docs/ is still gitignored on staging (the ignore removal
rides a separate PR).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@jirhiker jirhiker changed the title docs: add API monitoring options writeup docs: BDMS-1023 add API monitoring options writeup Jul 7, 2026
@jirhiker jirhiker changed the title docs: BDMS-1023 add API monitoring options writeup docs: add API monitoring options writeup BDMS-1023 Jul 7, 2026
jirhiker and others added 2 commits July 7, 2026 14:56
…tus page

Adds Option 4 (OpenStatus) — a status-page-first, AGPL-3.0 tool with public
status pages, subscriber notifications, and monitoring-as-code (YAML/Terraform)
that fits this repo's config-as-code habits. Reframes the doc's goal to include
a public status page for users and developers, adds a probe-independence note
(keep the monitor external to GCP so the page survives platform outages),
extends the comparison table, and re-weights the recommendation toward
OpenStatus when the public status page is the priority.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ommendation

Restructure to lead with the decision: TL;DR, an explicit five-tool shortlist,
and a polished recommendation with a concrete OpenStatus rollout plan. Broaden
from the original three self-hosted monitors to the full status-page landscape
(OpenStatus, Better Stack, Instatus, Gatus, Uptime Kuma, OneUptime, Checkmate,
Cachet, Statping-ng, Vigil, UptimeRobot, Atlassian Statuspage, Checkly,
incident.io, Blackbox Exporter), reframed around a public status page for users
and developers. Add a probe-independence constraint (keep the monitor external
to GCP), note that the live /health returns no DB check and should be extended,
add a focused comparison table and a when-to-pick-what decision guide.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@jirhiker

jirhiker commented Jul 7, 2026

Copy link
Copy Markdown
Member Author

@chasetmartin chasetmartin left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great start to monitoring, I think the OpenStatus recommendation is well-reasoned and the probe independence requirement is spot-on and having this status page is great.

One note: the SELECT 1 health check is a solid addition, and if all workers are down it'll absolutely catch that. The trickier case might be what we were seeing yesterday where some workers were running hot on memory while others were fine. The health check could land on a healthy instance and come back clean, even though users are getting errors from the struggling ones. I'm guessing this health check would eventually see an issue even in this case, but might be worth also checking a heavier common endpoint or query, like thing(well) details.

For future improvement on this as the app grows within the Bureau and the API usage increases: We could implement a common open source monitoring stack such as Prometheus and Grafana. There is a prometheus-fastapi-instrumentator library, and storing the metrics provided + visualizing with Grafana would give us further insight into error rates across all endpoints, latency, etc. We could then use K6 load testing to formally test for regressions or improvement as needed.

@likithabommasani21 likithabommasani21 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good overall, nice comparison and clear reasoning for the recommendation. One thought: since Ocotillo depends on external services like the auth provider and any other services, it might be worth adding those as their own components on the status page too. They're a separate failure domain from the DB/API, so a green health check wouldn't necessarily catch an issue there , but it's still something users would notice directly (login not working). Just a thought for completeness, not a blocker.

@jirhiker
jirhiker merged commit ad1ea28 into staging Jul 9, 2026
9 checks passed
@jirhiker
jirhiker deleted the docs/api-monitoring-options branch July 9, 2026 05:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants