async fn twiddle_service_status(reporter: HealthReporter) {
    let mut iter = 0u64;
    loop {
        iter += 1;
        tokio::time::sleep(Duration::from_secs(1)).await;

        if iter % 2 == 0 {
            reporter.set_serving::<GreeterServer<MyGreeter>>().await;
        } else {
            reporter.set_not_serving::<GreeterServer<MyGreeter>>().await;
        };
    }
}
This function (somewhat improbably) flips the status of a service every second, in order
that the effect of `tonic_health::HealthReporter::watch` can be easily observed.
examples/src/health/server.rs