-
Notifications
You must be signed in to change notification settings - Fork 174
Block Stats Command
Tomáš edited this page Sep 11, 2017
·
1 revision
In pull request 409, command to scan an compute select statistics from blockchain blocks directly in the wallet.
The syntax is following:
getblockstats 0 low_block_number [high_block_number]
getblockstats 1 [count_of_blocks [high_block_number]]
count_of_blocks
defaults to 200, high_block_number
defaults to current number of blocks.
Annotated sample (annotation after #, not part of actual output)
{
"general": {
"blocks": 14001, #total num of blocks processed
"first_height": 934222, #first and last included, then time
"last_height": 948222,
"first_time": "06-21-2017 04:33:36",
"last_time": "07-02-2017 12:16:32",
"time_span_hour": 271.71555556 #difference between first and last in hours
},
"counts": {
"block": 14001,
"empty_block": 11381, # number of blocks with only coinbase and constake tx
"transaction": 7922, # number of transaction excluding coinbase/stake
"proof_of_stake": 14001, # number of PoS blocks, should match blocks
"boincreward": 8813, # count of blocks where research reward is greater than 0.001
"super" : 0 # count of superblocks in the scanned period
},
"totals": {
"block": 14001,
"research": 350039.46, # sum of research rewards paid
"interest": 148958.42, # sum of interest rewards paid
"mint": 499114.27847717, # sum of nMint from block index
"blocksizek: 123, # sum of serialized size of all analysed blocks
},
"averages": {
"research": 39.71853625, # average research reward per research reward (called DPoR)
"interest": 10.63912721, # average interest of all blocks
"mint": 35.64847357, # average "nMint" per block
"stake_input": 0, # todo
"spacing_sec": 69.86472395, # average bloc spacing in seconds
"block_per_day": 1236.67560848, # avg blocks per day
"transaction": 3.02366412, # avg number of transaction per non-empty block
"blocksizek": 123456, # average block size
"posdiff" : 1.25032915, # average PoS difficulty
"super_spacing_hrs" : 37 # Average spacing of superblocks, in hours
},
"versions": { # distribution of client version recorded in blocks
"v3.5.9.0-g-research": 0.82158417, # 82% blocks have this client version
"v3.5.8.8-g-research": 0.11392043,
"v3.5.8.9-g-research": 0.06449539
},
"cpids": { # distribution of cpids that staked blocks
"INVESTOR": 0.34397543, # investors staked 34% of blocks
"8ed4ce08bfd7cb8a436eef5fc3be322f": 0.03656882, # this cpid staked 3% of blocks
"015baf274dd9265b1c53d6aa064cface": 0.01771302,
"0390450eff5f5cd6d7a7d95a6d898d8d": 0.01728448,
"0c130640a79aab9f1eaed36277bc51fc": 0.01392758,
"49f165229569bc8e7e49817686f8e23f": 0.01257053,
"7987115b986329432dc76534bafe4e6f": 0.01107064,
"1963a6f109ea770c195a0e1afacd2eba": 0.0106421,
"ec954793ff856045ed3df78ceec58d9c": 0.01028498,
"--snip--": 0
},
"orgs": { # distribution of contents of "Organisation" field in blocks
"": 1 # 100% of blocks have this field empty
}
}
For testing you can set the unused Organisation field to your name or whatever
(org=
option in config or -org=
on command line).