8 个版本 (5 个破坏性版本)
0.13.0 | 2023 年 8 月 25 日 |
---|---|
0.12.1 | 2023 年 2 月 14 日 |
0.12.0 | 2022 年 11 月 4 日 |
0.11.0 | 2022 年 9 月 14 日 |
0.8.0 | 2021 年 3 月 16 日 |
#8 in #健康检查
690 每月下载量
用于 mmdb-grpc
295KB
6.5K SLoC
grpcio-healthcheck
grpcio-health 提供健康检查协议以及一些辅助结构,以便轻松进行健康检查。
lib.rs
:
grpcio-health 提供健康检查协议以及一些辅助结构,以便轻松进行健康检查。关于健康检查服务的详细设计,请参阅 https://github.com/grpc/grpc/blob/master/doc/health-checking.md。
使用方法
该包提供了一个默认的 Health
服务实现,您可以使用它来维护服务状态。首先,您需要将其注册到服务器构建器中,以便它可以在以后提供健康检查服务。
use grpcio_health::{HealthService, create_health};
let service = HealthService::default();
let builder = builder.register_service(create_health(service.clone()));
然后插入查询的服务状态。
service.set_serving_status("", ServingStatus::Serving);
"""
表示整体健康状态。您也可以提供特定的服务名称。
客户端可以使用 check
进行一次性查询或 watch
来观察状态变化。
use grpcio_health::proto::HealthCheckRequest;
let client = HealthClient::new(ch);
let req = HealthCheckRequest { service: "".to_string(), ..Default::default() };
let status_resp = client.check_async(&req).await.unwrap();
assert_eq!(statuss_resp.status, ServingStatus::Serving);
依赖项
~37MB
~633K SLoC