区块链运行过程中,需要对区块链和各个节点的状态进行实时监控,保证区块链的运行稳定可靠。
1. 节点基础信息
1.1. 介绍
通过状态信息接口,可以知道每个节点当前的运行状态与所有模块的状态信息数据。
1.2. 监控方法
HTTP请求:
GET https://{url}/getModulesStatus
成功的返回json数据:
{
"account_db" : {
"disk_usage" : 2321701,
"rocksdb.cur-size-all-mem-tables" : "2523954",
"rocksdb.estimate-table-readers-mem" : "96",
"rocksdb.stats" : "\n** Compaction Stats [default] **\nLevel Files Size(MB) Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) Comp(cnt) Avg(sec) Stall(cnt) KeyIn KeyDrop\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------\n L0 2/0 0 0.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.8 0 1 0.002 0 0 0\n L1 1/0 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0.000 0 0 0\n Sum 3/0 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.8 0 1 0.002 0 0 0\n Int 0/0 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0.000 0 0 0\nFlush(GB): cumulative 0.000, interval 0.000\nStalls(count): 0 level0_slowdown, 0 level0_numfiles, 0 memtable_compaction, 0 leveln_slowdown_soft, 0 leveln_slowdown_hard\n\n** DB Stats **\nUptime(secs): 102544.1 total, 872.5 interval\nCumulative writes: 1710 writes, 17K keys, 1710 batches, 1.0 writes per batch, ingest: 0.00 GB, 0.00 MB/s\nCumulative WAL: 1710 writes, 1710 syncs, 1.00 writes per sync, written: 0.00 GB, 0.00 MB/s\nCumulative stall: 00:00:0.000 H:M:S, 0.0 percent\nInterval writes: 15 writes, 150 keys, 15 batches, 0.9 writes per batch, ingest: 0.02 MB, 0.00 MB/s\nInterval WAL: 15 writes, 15 syncs, 0.94 writes per sync, written: 0.00 MB, 0.00 MB/s\nInterval stall: 00:00:0.000 H:M:S, 0.0 percent\n"
},
"consensus manager" : {
"consensus" : {
"abnormal_records" : null,
"ckp_interval" : 10,
"fault_number" : 0,
"instances" : [
{
"commits" : [
"type:Commit | vn:19631 seq:19633 replica:0 | value:51e15ce0ccd00500f86c27f8acd01c2edd86641b0a03a761b43f6fd774f8f4a7"
],
"cons_value" : "value hash(51e15ce0ccd00500f86c27f8acd01c2edd86641b0a03a761b43f6fd774f8f4a7) | close time(1709704776504508) | lcl hash(2a502e21) | ledger seq(19633) ",
"end_time" : "2024-03-06 13:59:36.517421",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 13:59:36.514910",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19631 seq:19633 replica:0 | value: 51e15ce0ccd00500f86c27f8acd01c2edd86641b0a03a761b43f6fd774f8f4a7 ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19631 seq:19633 replica:0 | value:51e15ce0ccd00500f86c27f8acd01c2edd86641b0a03a761b43f6fd774f8f4a7"
],
"seq" : 19633,
"start_time" : "2024-03-06 13:59:36.514910",
"vn" : 19631
},
{
"commits" : [
"type:Commit | vn:19632 seq:19634 replica:0 | value:27d09c549a09c1d4b68cfa348d0cb1111f367f10ef8fbfef0d00a80c9b200974"
],
"cons_value" : "value hash(27d09c549a09c1d4b68cfa348d0cb1111f367f10ef8fbfef0d00a80c9b200974) | close time(1709704836497384) | lcl hash(f142ac8d) | ledger seq(19634) ",
"end_time" : "2024-03-06 14:00:36.509719",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:00:36.507710",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19632 seq:19634 replica:0 | value: 27d09c549a09c1d4b68cfa348d0cb1111f367f10ef8fbfef0d00a80c9b200974 ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19632 seq:19634 replica:0 | value:27d09c549a09c1d4b68cfa348d0cb1111f367f10ef8fbfef0d00a80c9b200974"
],
"seq" : 19634,
"start_time" : "2024-03-06 14:00:36.507710",
"vn" : 19632
},
{
"commits" : [
"type:Commit | vn:19633 seq:19635 replica:0 | value:c1437e8dbc2754f65c8a9920b111b487dcc4fedc84ced34fbf3369e8fec5859f"
],
"cons_value" : "value hash(c1437e8dbc2754f65c8a9920b111b487dcc4fedc84ced34fbf3369e8fec5859f) | close time(1709704896491386) | lcl hash(e08f844d) | ledger seq(19635) ",
"end_time" : "2024-03-06 14:01:36.503374",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:01:36.501712",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19633 seq:19635 replica:0 | value: c1437e8dbc2754f65c8a9920b111b487dcc4fedc84ced34fbf3369e8fec5859f ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19633 seq:19635 replica:0 | value:c1437e8dbc2754f65c8a9920b111b487dcc4fedc84ced34fbf3369e8fec5859f"
],
"seq" : 19635,
"start_time" : "2024-03-06 14:01:36.501712",
"vn" : 19633
},
{
"commits" : [
"type:Commit | vn:19634 seq:19636 replica:0 | value:e21f4983348328abc414924fc3cfef12abbbbb444aeb7491639bc105628d5858"
],
"cons_value" : "value hash(e21f4983348328abc414924fc3cfef12abbbbb444aeb7491639bc105628d5858) | close time(1709704956483537) | lcl hash(376d8236) | ledger seq(19636) ",
"end_time" : "2024-03-06 14:02:36.495853",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:02:36.493884",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19634 seq:19636 replica:0 | value: e21f4983348328abc414924fc3cfef12abbbbb444aeb7491639bc105628d5858 ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19634 seq:19636 replica:0 | value:e21f4983348328abc414924fc3cfef12abbbbb444aeb7491639bc105628d5858"
],
"seq" : 19636,
"start_time" : "2024-03-06 14:02:36.493884",
"vn" : 19634
},
{
"commits" : [
"type:Commit | vn:19635 seq:19637 replica:0 | value:a2fa1263b4cba9de6ddf390d9b13f6beb606b79bada7ba774374466966d850d0"
],
"cons_value" : "value hash(a2fa1263b4cba9de6ddf390d9b13f6beb606b79bada7ba774374466966d850d0) | close time(1709705016475043) | lcl hash(5d3e5a05) | ledger seq(19637) ",
"end_time" : "2024-03-06 14:03:36.486893",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:03:36.485323",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19635 seq:19637 replica:0 | value: a2fa1263b4cba9de6ddf390d9b13f6beb606b79bada7ba774374466966d850d0 ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19635 seq:19637 replica:0 | value:a2fa1263b4cba9de6ddf390d9b13f6beb606b79bada7ba774374466966d850d0"
],
"seq" : 19637,
"start_time" : "2024-03-06 14:03:36.485323",
"vn" : 19635
}
],
"is_leader" : true,
"last_exe_seq" : 19637,
"leader" : "adxSBC9QWrTfZjxjnPjKEF5LHGHYCpZ9BDdDF",
"quorum_size" : 0,
"replica_id" : 0,
"type" : "pbft",
"validator_address" : "adxSBC9QWrTfZjxjnPjKEF5LHGHYCpZ9BDdDF",
"validator_address_random" : false,
"validators" : [ "adxSBC9QWrTfZjxjnPjKEF5LHGHYCpZ9BDdDF" ],
"view_active" : true,
"view_number" : 19636,
"viewchanges" : null
},
"time" : "0 ms"
},
"glue_manager" : {
"del_tx_count" : 44264,
"ledger_upgrade" : {
"current_states" : null,
"local_state" : null
},
"new_tx_count" : 44264,
"system" : {
"current_time" : "2024-03-06 14:04:02",
"process_uptime" : "2024-03-05 09:35:00",
"uptime" : "2024-03-04 10:31:32"
},
"time" : "0 ms",
"transaction_pool" : {
"account_nonce_size" : 0,
"queue_by_address_and_nonce_size" : 0,
"queue_size" : 0,
"time_queue_size" : 0
}
},
"keyvalue_db" : {
"disk_usage" : 334625,
"rocksdb.cur-size-all-mem-tables" : "195912",
"rocksdb.estimate-table-readers-mem" : "92",
"rocksdb.stats" : "\n** Compaction Stats [default] **\nLevel Files Size(MB) Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) Comp(cnt) Avg(sec) Stall(cnt) KeyIn KeyDrop\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------\n L0 3/0 0 0.8 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.2 0 1 0.005 0 0 0\n L1 1/0 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0.000 0 0 0\n Sum 4/0 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.2 0 1 0.005 0 0 0\n Int 0/0 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0.000 0 0 0\nFlush(GB): cumulative 0.000, interval 0.000\nStalls(count): 0 level0_slowdown, 0 level0_numfiles, 0 memtable_compaction, 0 leveln_slowdown_soft, 0 leveln_slowdown_hard\n\n** DB Stats **\nUptime(secs): 102544.2 total, 872.5 interval\nCumulative writes: 1712 writes, 3425 keys, 1712 batches, 1.0 writes per batch, ingest: 0.00 GB, 0.00 MB/s\nCumulative WAL: 1712 writes, 1712 syncs, 1.00 writes per sync, written: 0.00 GB, 0.00 MB/s\nCumulative stall: 00:00:0.000 H:M:S, 0.0 percent\nInterval writes: 15 writes, 30 keys, 15 batches, 0.9 writes per batch, ingest: 0.00 MB, 0.00 MB/s\nInterval WAL: 15 writes, 15 syncs, 0.94 writes per sync, written: 0.00 MB, 0.00 MB/s\nInterval stall: 00:00:0.000 H:M:S, 0.0 percent\n"
},
"ledger_db" : {
"disk_usage" : 10859087,
"rocksdb.cur-size-all-mem-tables" : "1080229",
"rocksdb.estimate-table-readers-mem" : "37874",
"rocksdb.stats" : "\n** Compaction Stats [default] **\nLevel Files Size(MB) Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) Comp(cnt) Avg(sec) Stall(cnt) KeyIn KeyDrop\n---------------------------------------------------------------------------------------------------------------------------------------------------------------------\n L0 1/0 1 0.2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 134.5 0 1 0.004 0 0 0\n L1 5/0 9 0.9 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0.000 0 0 0\n Sum 6/0 9 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 134.5 0 1 0.004 0 0 0\n Int 0/0 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0.000 0 0 0\nFlush(GB): cumulative 0.001, interval 0.000\nStalls(count): 0 level0_slowdown, 0 level0_numfiles, 0 memtable_compaction, 0 leveln_slowdown_soft, 0 leveln_slowdown_hard\n\n** DB Stats **\nUptime(secs): 102544.2 total, 872.5 interval\nCumulative writes: 1710 writes, 6842 keys, 1710 batches, 1.0 writes per batch, ingest: 0.00 GB, 0.00 MB/s\nCumulative WAL: 1710 writes, 1710 syncs, 1.00 writes per sync, written: 0.00 GB, 0.00 MB/s\nCumulative stall: 00:00:0.000 H:M:S, 0.0 percent\nInterval writes: 15 writes, 60 keys, 15 batches, 0.9 writes per batch, ingest: 0.01 MB, 0.00 MB/s\nInterval WAL: 15 writes, 15 syncs, 0.94 writes per sync, written: 0.00 MB, 0.00 MB/s\nInterval stall: 00:00:0.000 H:M:S, 0.0 percent\n"
},
"ledger_manager" : {
"account_count" : 10,
"chain_max_ledger_seq" : 19637,
"hash_type" : "sha256",
"lcl_header_space_used" : 368,
"ledger_context" : {
"completed_size" : 0,
"running_size" : 0
},
"ledger_sequence" : 19637,
"sync" : {
"peers" : null,
"update_time" : 1709705016486914
},
"time" : "0 ms",
"tx_count" : 46,
"validation_address" : "adxSBC9QWrTfZjxjnPjKEF5LHGHYCpZ9BDdDF"
},
"peer_manager" : {
"consensus_network" : {
"broad_bigdata_queue_size" : 0,
"broad_record_couple_size" : 60,
"broad_record_size" : 60,
"broad_sendbuffer_size" : 0,
"node_rand" : "node-rand-1709602500375617-2034038740",
"peer_active_size" : 0,
"peer_cache_size" : 0,
"peer_cache_space_used" : 56,
"peer_list_size" : 0,
"peer_listdel_size" : 0,
"peers" : null,
"recv_peerlist_size" : 0,
"tx_task_size" : 0
},
"peer_node_address" : "adxSggi9WECzaaJNGtN1m6BAVP3P64DdCLCjs",
"time" : "0 ms"
},
"web server" : {
"context" : false,
"end_request_count" : 11224,
"expire_request_count" : 0,
"start_request_count" : 11224,
"thread_count" : 8,
"time" : "0 ms"
},
"websocket_server" : {
"clients" : null,
"listen_port" : 0,
"time" : "0 ms"
}
}
响应参数说明:
字段名 | 类型 | 描述 |
---|---|---|
account_db | Object | 账户数据库模块状态信息。 |
account_db.disk_usage | Number | 磁盘空间占用字节大小。 |
account_db.rocksdb.cur-size-all-mem-tables | String | rocksdb所有内存表的当前大小。 |
account_db.rocksdb.estimate-table-readers-mem | String | rocksdb估计的表读取器内存。 |
account_db.rocksdb.stats | String | rocksdb数据库状态信息。 |
consensus manager | Object | 共识管理模块状态信息。 |
consensus manager.consensus | Object | 共识信息。参考下一章节节点共识信息。 |
consensus manager.time | String | 信息收集耗时。 |
glue_manager | Object | 组件管理模块状态信息。 |
glue_manager.del_tx_count | Number | 删除交易总数。 |
glue_manager.ledger_upgrade | Object | 账本升级信息 |
glue_manager.ledger_upgrade.current_states | Object | 当前状态。 |
glue_manager.ledger_upgrade.local_state | Object | 本地状态。 |
glue_manager.new_tx_count | Number | 新交易总数。 |
glue_manager.system | Object | 系统时间信息。 |
glue_manager.system.current_time | String | 系统当前时间。 |
glue_manager.system.process_uptime | String | 节点进程启动时间。 |
glue_manager.system.uptime | String | 系统启动时间。 |
glue_manager.time | String | 信息收集耗时。 |
glue_manager.transaction_pool | Object | 交易池信息 |
glue_manager.transaction_pool.account_nonce_size | Number | 账户队列大小。 |
glue_manager.transaction_pool.queue_by_address_and_nonce_size | Number | 地址序号队列大小。 |
glue_manager.transaction_pool.queue_size | Number | 队列大小。 |
glue_manager.transaction_pool.time_queue_size | Number | 时间队列大小。 |
keyvalue_db | Object | 信息数据库模块状态信息。 |
keyvalue_db.disk_usage | Number | 磁盘空间占用字节大小。 |
keyvalue_db.rocksdb.cur-size-all-mem-tables | String | rocksdb所有内存表的当前大小。 |
keyvalue_db.rocksdb.estimate-table-readers-mem | String | rocksdb估计的表读取器内存。 |
keyvalue_db.rocksdb.stats | String | rocksdb数据库状态信息。 |
ledger_db | Object | 账本数据库模块状态信息。 |
ledger_db.disk_usage | Number | 磁盘空间占用字节大小。 |
ledger_db.rocksdb.cur-size-all-mem-tables | String | rocksdb所有内存表的当前大小。 |
ledger_db.rocksdb.estimate-table-readers-mem | String | rocksdb估计的表读取器内存。 |
ledger_db.rocksdb.stats | String | rocksdb数据库状态信息。 |
ledger_manager | Object | 账本管理模块状态信息。 |
ledger_manager.account_count | Number | 链上账户总数。 |
ledger_manager.chain_max_ledger_seq | Number | 区块链网络最高区块链高度。如果当前节点区块落后,这个值应该大于当前节点的区块高度。 |
ledger_manager.hash_type | String | 区块哈希类型。 |
ledger_manager.lcl_header_space_used | Number | 最近关闭区块的区块头字节大小。 |
ledger_manager.ledger_context | Object | 账本上下文信息 |
ledger_manager.ledger_context.completed_size | Number | 已完成大小。 |
ledger_manager.ledger_context.running_size | Number | 运行中的大小。 |
ledger_manager.ledger_sequence | Number | 节点当前区块高度。 |
ledger_manager.sync | Object | 区块同步信息。 |
ledger_manager.sync.peers | List | 同步的节点列表。 |
ledger_manager.sync.update_time | Number | 更新时间。 |
ledger_manager.time | Number | 信息收集耗时。 |
ledger_manager.tx_count | Number | 链上签名交易总数。合约产生的子交易没有签名信息,不在统计范围内。 |
ledger_manager.validation_address | String | 节点账本地址。 |
peer_manager | Object | 节点管理模块状态信息。 |
peer_manager.consensus_network | Object | 共识网络信息。 |
peer_manager.consensus_network.broad_bigdata_queue_size | Number | 广播数据队列大小。 |
peer_manager.consensus_network.broad_record_couple_size | Number | 广播记录对大小。 |
peer_manager.consensus_network.broad_record_size | Number | 广播记录数量。 |
peer_manager.consensus_network.broad_sendbuffer_size | Number | 广播发送缓存大小。 |
peer_manager.consensus_network.node_rand | String | 节点随机名称。 |
peer_manager.consensus_network.peer_active_size | Number | 节点活跃数量。 |
peer_manager.consensus_network.peer_cache_size | Number | 节点缓冲大小。 |
peer_manager.consensus_network.peer_cache_space_used | Number | 节点缓存空间使用量。 |
peer_manager.consensus_network.peer_list_size | Number | 节点列表大小。 |
peer_manager.consensus_network.peer_listdel_size | Number | 节点列表删除数量。 |
peer_manager.consensus_network.peers | List | 连接的节点列表。 |
peer_manager.consensus_network.recv_peerlist_size | Number | 接收节点列表大小。 |
peer_manager.consensus_network.tx_task_size | Number | 交易任务大小。 |
peer_manager.peer_node_address | String | 节点P2P账号地址。 |
peer_manager.time | String | 信息收集耗时。 |
web server | Object | HttpServer模块状态信息。 |
web server.context | Boolean | 是否启用SSL。 |
web server.end_request_count | Number | 完成的请求数量。 |
web server.expire_request_count | Number | 超时的请求数据。 |
web server.start_request_count | Number | 开始的请求数量。 |
web server.thread_count | Number | 线程数量。 |
web server.time | String | 信息收集耗时。 |
websocket_server | Object | Websocket模块状态信息 |
websocket_server.clients | List | 连接客户端列表 |
websocket_server.listen_port | Number | 监听端口号。 |
websocket_server.time | String | 信息收集耗时。 |
2. 节点共识信息
2.1. 介绍
通过共识信息接口,可以查询节点目前的共识数据,检测最新的共识状态是否正常。
2.2. 监控方法
HTTP请求:
GET http://{url}/getConsensusInfo
成功的返回JSON数据:
{
"abnormal_records" : null,
"ckp_interval" : 10,
"fault_number" : 0,
"instances" : [
{
"commits" : [
"type:Commit | vn:19637 seq:19639 replica:0 | value:874e1614f1356dcaaefe9fde0ee158e74deee8dfdd81809e560f6ff6fe8db446"
],
"cons_value" : "value hash(874e1614f1356dcaaefe9fde0ee158e74deee8dfdd81809e560f6ff6fe8db446) | close time(1709705136466944) | lcl hash(a5f274b0) | ledger seq(19639) ",
"end_time" : "2024-03-06 14:05:36.479348",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:05:36.477464",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19637 seq:19639 replica:0 | value: 874e1614f1356dcaaefe9fde0ee158e74deee8dfdd81809e560f6ff6fe8db446 ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19637 seq:19639 replica:0 | value:874e1614f1356dcaaefe9fde0ee158e74deee8dfdd81809e560f6ff6fe8db446"
],
"seq" : 19639,
"start_time" : "2024-03-06 14:05:36.477464",
"vn" : 19637
},
{
"commits" : [
"type:Commit | vn:19638 seq:19640 replica:0 | value:e1112d1a68ea7fb77764129dc31d87d2d2b875a5b899dce4469d08014eef40bb"
],
"cons_value" : "value hash(e1112d1a68ea7fb77764129dc31d87d2d2b875a5b899dce4469d08014eef40bb) | close time(1709705196467776) | lcl hash(4d0e8c95) | ledger seq(19640) ",
"end_time" : "2024-03-06 14:06:36.480028",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:06:36.478090",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19638 seq:19640 replica:0 | value: e1112d1a68ea7fb77764129dc31d87d2d2b875a5b899dce4469d08014eef40bb ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19638 seq:19640 replica:0 | value:e1112d1a68ea7fb77764129dc31d87d2d2b875a5b899dce4469d08014eef40bb"
],
"seq" : 19640,
"start_time" : "2024-03-06 14:06:36.478090",
"vn" : 19638
},
{
"commits" : [
"type:Commit | vn:19639 seq:19641 replica:0 | value:b843efcbf17eaf3262152298417433b2d89c5b819467c17c54786ec4d37f6ba3"
],
"cons_value" : "value hash(b843efcbf17eaf3262152298417433b2d89c5b819467c17c54786ec4d37f6ba3) | close time(1709705256466312) | lcl hash(2c1a34c1) | ledger seq(19641) ",
"end_time" : "2024-03-06 14:07:36.478147",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:07:36.476525",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19639 seq:19641 replica:0 | value: b843efcbf17eaf3262152298417433b2d89c5b819467c17c54786ec4d37f6ba3 ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19639 seq:19641 replica:0 | value:b843efcbf17eaf3262152298417433b2d89c5b819467c17c54786ec4d37f6ba3"
],
"seq" : 19641,
"start_time" : "2024-03-06 14:07:36.476525",
"vn" : 19639
},
{
"commits" : [
"type:Commit | vn:19640 seq:19642 replica:0 | value:18ca43b3f09c4261dec9e81b7163fd86f9b0b3424dd11d6822fa0acace5e3557"
],
"cons_value" : "value hash(18ca43b3f09c4261dec9e81b7163fd86f9b0b3424dd11d6822fa0acace5e3557) | close time(1709705316459598) | lcl hash(7c96b682) | ledger seq(19642) ",
"end_time" : "2024-03-06 14:08:36.471488",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:08:36.469922",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19640 seq:19642 replica:0 | value: 18ca43b3f09c4261dec9e81b7163fd86f9b0b3424dd11d6822fa0acace5e3557 ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19640 seq:19642 replica:0 | value:18ca43b3f09c4261dec9e81b7163fd86f9b0b3424dd11d6822fa0acace5e3557"
],
"seq" : 19642,
"start_time" : "2024-03-06 14:08:36.469922",
"vn" : 19640
},
{
"commits" : [
"type:Commit | vn:19641 seq:19643 replica:0 | value:acfe33a1e5e8156d1938a23abeb136c6a568956e3368121e8fa074440d7e82ac"
],
"cons_value" : "value hash(acfe33a1e5e8156d1938a23abeb136c6a568956e3368121e8fa074440d7e82ac) | close time(1709705376454587) | lcl hash(a4852e5b) | ledger seq(19643) ",
"end_time" : "2024-03-06 14:09:36.466934",
"have_send_viewchange" : false,
"last_propose_time" : "2024-03-06 14:09:36.464900",
"phase" : "PHASE_COMMITED",
"phase_item" : 0,
"pre_prepare" : "type:Pre-Prepare | vn:19641 seq:19643 replica:0 | value: acfe33a1e5e8156d1938a23abeb136c6a568956e3368121e8fa074440d7e82ac ",
"pre_prepare_round" : 1,
"prepares" : [
"type:Prepare | vn:19641 seq:19643 replica:0 | value:acfe33a1e5e8156d1938a23abeb136c6a568956e3368121e8fa074440d7e82ac"
],
"seq" : 19643,
"start_time" : "2024-03-06 14:09:36.464900",
"vn" : 19641
}
],
"is_leader" : true,
"last_exe_seq" : 19643,
"leader" : "adxSBC9QWrTfZjxjnPjKEF5LHGHYCpZ9BDdDF",
"quorum_size" : 0,
"replica_id" : 0,
"type" : "pbft",
"validator_address" : "adxSBC9QWrTfZjxjnPjKEF5LHGHYCpZ9BDdDF",
"validator_address_random" : false,
"validators" : [ "adxSBC9QWrTfZjxjnPjKEF5LHGHYCpZ9BDdDF" ],
"view_active" : true,
"view_number" : 19642,
"viewchanges" : null
}
响应参数说明:
字段名 | 类型 | 描述 |
---|---|---|
abnormal_records | Object | 异常记录。 |
ckp_interval | String | 检查点间隔。定义了在多长时间之后,系统应该创建一个检查点,以便可以在出现故障时更有效地恢复和保持系统的一致性。 |
fault_number | Number | 能容忍的失效节点数。 |
instances | List | 共识实例。 |
instances[].commits | List | 提交阶段信息列表。 |
instances[].cons_value | String | 共识信息。 |
instances[].end_time | String | 结束时间。 |
instances[].have_send_viewchange | Boolean | 是否发送视图切换。 |
instances[].last_propose_time | String | 最近提案时间。 |
instances[].phase | String | 共识阶段描述。 |
instances[].phase_item | Number | 共识阶段。 |
instances[].pre_prepare | String | 提案阶段信息。 |
instances[].pre_prepare_round | Number | 提案阶段轮次。 |
instances[].prepares | List | 确认阶段信息列表。 |
instances[].seq | Number | 区块号。 |
instances[].start_time | String | 开始时间。 |
instances[].vn | Number | 视图编号。 |
is_leader | Boolean | 是否是提案发起者。 |
last_exe_seq | Number | 最近关闭区块号。 |
leader | String | 共识节点账号地址。 |
quorum_size | Number | 法定数量,为了达成共识,必须达到的最小参与节点数目。 |
replica_id | Number | 节点编号 |
type | String | 共识算法类型 |
validator_address | String | 本节点账本地址。 |
validator_address_random | Boolean | 节点地址是否随机生成。 |
validators | List | 共识节点列表 |
view_active | Boolean | 视图是否激活 |
view_number | Number | 视图编号 |
viewchanges | String | 视图切换信息 |