Skip to content

Commit f0d0ca9

Browse files
authored
add power to boostx stats (#638)
* add power to stats * fixup
1 parent e484aa6 commit f0d0ca9

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

cmd/boostx/stats_cmd.go

+18
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ import (
1010
clinode "github.com/filecoin-project/boost/cli/node"
1111
"github.com/filecoin-project/boost/cmd"
1212
"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"
1315
"github.com/filecoin-project/lotus/chain/types"
1416
lcli "github.com/filecoin-project/lotus/cli"
1517
"github.com/urfave/cli/v2"
@@ -44,6 +46,8 @@ var statsCmd = &cli.Command{
4446
wg.Add(len(miners))
4547
var lk sync.Mutex
4648
var withMinPower []address.Address
49+
minerToMinerPower := make(map[address.Address]power.Claim)
50+
minerToTotalPower := make(map[address.Address]power.Claim)
4751

4852
throttle := make(chan struct{}, 50)
4953
for _, miner := range miners {
@@ -62,6 +66,8 @@ var statsCmd = &cli.Command{
6266
if power.HasMinPower { // TODO: Lower threshold
6367
lk.Lock()
6468
withMinPower = append(withMinPower, miner)
69+
minerToMinerPower[miner] = power.MinerPower
70+
minerToTotalPower[miner] = power.TotalPower
6571
lk.Unlock()
6672
}
6773
}(miner)
@@ -73,6 +79,9 @@ var statsCmd = &cli.Command{
7379

7480
var boostNodes, marketsNodes, noProtocolsNodes, indexerNodes int
7581

82+
boostRawBytePower := big.NewInt(0)
83+
boostQualityAdjPower := big.NewInt(0)
84+
7685
for _, maddr := range withMinPower {
7786
select {
7887
case <-ctx.Done():
@@ -101,7 +110,14 @@ var statsCmd = &cli.Command{
101110
fmt.Print("Provider " + maddr.String())
102111
if contains(protos, "/fil/storage/mk/1.2.0") {
103112
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+
104118
boostNodes++
119+
boostQualityAdjPower = big.Add(boostQualityAdjPower, minerToMinerPower[maddr].QualityAdjPower)
120+
boostRawBytePower = big.Add(boostRawBytePower, minerToMinerPower[maddr].RawBytePower)
105121
} else if contains(protos, "/fil/storage/mk/1.1.0") {
106122
fmt.Print(" is running markets")
107123
marketsNodes++
@@ -125,6 +141,8 @@ var statsCmd = &cli.Command{
125141

126142
fmt.Println()
127143
fmt.Println("Total Boost nodes:", boostNodes)
144+
fmt.Println("Total Boost raw power:", boostRawBytePower)
145+
fmt.Println("Total Boost quality adj power:", boostQualityAdjPower)
128146
fmt.Println("Total Lotus Markets nodes:", marketsNodes)
129147
fmt.Println("Total SPs with minimum power: ", len(withMinPower))
130148
fmt.Println("Total Indexer nodes:", indexerNodes)

0 commit comments

Comments
 (0)