I made a tool for browsing `status json`

Hey Folks,

I’ve been setting up production ready FoundationDB clusters for my startup employer recently, it’s been a learning experience for sure, going from k8s to bare EC2. Of course we’re shipping all possible statistics to our metrics vendor of choice, but I felt there was a bit of a hole.

When investigating live issues I wanted a way to view stats live and monitor them. We’re aware of fdbtop, but its not maintained and frankly we didn’t want to install node on our production clusters.

So I’ve put together fdbexplorer, it’s a single binary tool that connects to FDB, parses and presents the output from status json in an “explorerable” way.

It’s in active development as we identify our needs that are missing, we’ve found it really valuable for monitoring things like cluster recovery and rebalancing.

If it sounds useful to you and want to give it a look head on over to: GitHub - pwood/fdbexplorer: A TUI tool for exploring the status of FoundationDB clusters. - there’s a small screencast you can see of what the different screens look like.

The source is available if you want to build for security reasons, or there are linux and darwin amd64 builds too.

Hopefully this is useful to someone else, it’s probably not useful to those running on a single node. :smiley:

4 Likes

For the old FDB version I got:

./fdbexplorer-darwin-amd64
fdbexplorer (devel) (rev-4bc65b7)

panic: This version of the FoundationDB Go binding is not supported by the installed FoundationDB C library. The binding requires a library that supports API version 710, but the installed library supports a maximum version of 510.

goroutine 6 [running]:
github.com/apple/foundationdb/bindings/go/src/fdb.MustAPIVersion(...)
	/Users/runner/go/pkg/mod/github.com/apple/foundationdb/bindings/go@v0.0.0-20221013231218-148f8157d660/src/fdb/fdb.go:179
github.com/pwood/fdbexplorer/input/libfdb.(*FDB).Run(0xc0000746c0)
	/Users/runner/work/fdbexplorer/fdbexplorer/input/libfdb/fdb.go:36 +0x125
created by main.main
	/Users/runner/work/fdbexplorer/fdbexplorer/main.go:22 +0xc5