stellar / quickstart

Home of the stellar/quickstart docker image for development and testing
Apache License 2.0
195 stars 206 forks source link

Manage history-archive http server with supervisor #507

Closed leighmcculloch closed 1 year ago

leighmcculloch commented 1 year ago

What

Remove the python3 http server that is started as a background job of the main process and replace it with running the same http server with supervisor.

Why

The history archive http server is a critical component of the quickstart image when run in local mode as it serves the history archives for horizon, soroban-rpc.

Today the history archive http server is run as a background job from the start script, and its logs are sent to /dev/null. This gives us no visibility into what its doing, if its still running, and if it encountered any issues, what they are.

We use supervisor to run long running services in the quickstart image and there's no reason I can see why we wouldn't also use it for the history archive http server.

The reason I care about this today is there was a case where someone was experiencing issues and the logs appeared as if the history archive wasn't available. Because the history archive wasn't managed by supervisor there was no way to debug if it was still running or what it was doing.