@@ -10,6 +10,8 @@ import (
10
10
clinode "github.com/filecoin-project/boost/cli/node"
11
11
"github.com/filecoin-project/boost/cmd"
12
12
"github.com/filecoin-project/go-address"
13
+ "github.com/filecoin-project/go-state-types/big"
14
+ "github.com/filecoin-project/lotus/chain/actors/builtin/power"
13
15
"github.com/filecoin-project/lotus/chain/types"
14
16
lcli "github.com/filecoin-project/lotus/cli"
15
17
"github.com/urfave/cli/v2"
@@ -44,6 +46,8 @@ var statsCmd = &cli.Command{
44
46
wg .Add (len (miners ))
45
47
var lk sync.Mutex
46
48
var withMinPower []address.Address
49
+ minerToMinerPower := make (map [address.Address ]power.Claim )
50
+ minerToTotalPower := make (map [address.Address ]power.Claim )
47
51
48
52
throttle := make (chan struct {}, 50 )
49
53
for _ , miner := range miners {
@@ -62,6 +66,8 @@ var statsCmd = &cli.Command{
62
66
if power .HasMinPower { // TODO: Lower threshold
63
67
lk .Lock ()
64
68
withMinPower = append (withMinPower , miner )
69
+ minerToMinerPower [miner ] = power .MinerPower
70
+ minerToTotalPower [miner ] = power .TotalPower
65
71
lk .Unlock ()
66
72
}
67
73
}(miner )
@@ -73,6 +79,9 @@ var statsCmd = &cli.Command{
73
79
74
80
var boostNodes , marketsNodes , noProtocolsNodes , indexerNodes int
75
81
82
+ boostRawBytePower := big .NewInt (0 )
83
+ boostQualityAdjPower := big .NewInt (0 )
84
+
76
85
for _ , maddr := range withMinPower {
77
86
select {
78
87
case <- ctx .Done ():
@@ -101,7 +110,14 @@ var statsCmd = &cli.Command{
101
110
fmt .Print ("Provider " + maddr .String ())
102
111
if contains (protos , "/fil/storage/mk/1.2.0" ) {
103
112
fmt .Print (" is running boost" )
113
+ fmt .Println ()
114
+
115
+ fmt .Println ("boost provider " , maddr .String (), "raw power:" , minerToMinerPower [maddr ].RawBytePower )
116
+ fmt .Println ("boost provider " , maddr .String (), "quality adj power:" , minerToMinerPower [maddr ].QualityAdjPower )
117
+
104
118
boostNodes ++
119
+ boostQualityAdjPower = big .Add (boostQualityAdjPower , minerToMinerPower [maddr ].QualityAdjPower )
120
+ boostRawBytePower = big .Add (boostRawBytePower , minerToMinerPower [maddr ].RawBytePower )
105
121
} else if contains (protos , "/fil/storage/mk/1.1.0" ) {
106
122
fmt .Print (" is running markets" )
107
123
marketsNodes ++
@@ -125,6 +141,8 @@ var statsCmd = &cli.Command{
125
141
126
142
fmt .Println ()
127
143
fmt .Println ("Total Boost nodes:" , boostNodes )
144
+ fmt .Println ("Total Boost raw power:" , boostRawBytePower )
145
+ fmt .Println ("Total Boost quality adj power:" , boostQualityAdjPower )
128
146
fmt .Println ("Total Lotus Markets nodes:" , marketsNodes )
129
147
fmt .Println ("Total SPs with minimum power: " , len (withMinPower ))
130
148
fmt .Println ("Total Indexer nodes:" , indexerNodes )
0 commit comments