service-probe 0.3.0

Probe for querying service state through a minimal HTTP service
Documentation

Service probe

This crate provides an easy way to start a HTTP server that can be used for making the status of a service transparent to observers. The main use case is to communicate information about the health status of a service in containerized environments.

Tasks and synchronization throughout this crate uses [tokio] functionality, so the runtime must be present and running when the functions of this crate are called.

To start the service probe, add the following code to your service:

# async {
use service_probe::{start_probe, ServiceState, set_service_state};

// The probe server is started in the background. Up signals that the services is starting.
start_probe([0u8, 0, 0, 0], 11333, ServiceState::Up).await.unwrap();

// If everything is ready, we set the state to ready.
set_service_state(ServiceState::Ready);

# };