I got a task to offload terabytes of data off an old ElasticSearch cluster and into a shiny new database. After bouncing around a few options like RDS and Mongo, we discovered that one of the requirements was to have total hit counts for our APIs. And that simple requirement kind of killed all the fun and funneled us back into OpenSearch, where total hits are included for free.

That was a preamble.

Trying to measure the speed of ingestion and cluster status, I discovered that OpenSearch provides a rich _cat API that exposes… a lot…

ostop demo

Oh, due to some issues with SecTeam and routing, we have no access to the official dashboard that AWS provisioned for us for free.

So having all the data in a machine-readable format and through a well-documented API gave me weirdly happy vibes. And I remembered a video from Tom Scott about the good old days when APIs used to allow you to connect anything to anything.

I looked up an OpenSearch API library, opensearch-project/opensearch-go, paired it with the beautiful Bubble Tea TUI library, and leaned into the fact that Go always provides sources right there for any AI to read. After a single day of tinkering, a little tool to review the contents of the OpenSearch API bubbled up.

And you know what? In our complicated world of overengineered solutions (AWS4Sig for OpenSearch calls), having a way to quickly connect it all together in a single afternoon feels good.

Download ostop