Solana RPC API手册

getHealth

getHealth方法返回节点的当前健康状态。

如果solana-validator启用了一个或多个--trusted-validator参数, 那么当节点处于HEALTH_CHECK_SLOT_DISTANCE槽位内时将返回"ok", 否则返回错误。如果没有设置可信validator,则始终返回"ok"。

请求参数

响应结果

如果节点健康,则返回ok,否则返回一个JSON RPC错误响应对象。

示例代码

请求:

curl http://localhost:8899 -X POST -H "Content-Type: application/json" -d '
  {"jsonrpc":"2.0","id":1, "method":"getHealth"}

健康时的响应:

{"jsonrpc":"2.0","result": "ok","id":1}

不健康时的响应:

{
  "jsonrpc": "2.0",
  "error": {
    "code": -32005,
    "message": "Node is unhealthy",
    "data": {}
  },
  "id": 1
}

不健康时的响应也可能包含更多的信息:

{
  "jsonrpc": "2.0",
  "error": {
    "code": -32005,
    "message": "Node is behind by 42 slots",
    "data": {
      "numSlotsBehind": 42
    }
  },
  "id": 1
}