Add current power to the stats
This commit is contained in:
parent
dd09666399
commit
677c193e6c
@ -2,10 +2,12 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
corebig "math/big"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/filecoin-project/go-address"
|
"github.com/filecoin-project/go-address"
|
||||||
"github.com/filecoin-project/go-state-types/abi"
|
"github.com/filecoin-project/go-state-types/abi"
|
||||||
|
filbig "github.com/filecoin-project/go-state-types/big"
|
||||||
lcli "github.com/filecoin-project/lotus/cli"
|
lcli "github.com/filecoin-project/lotus/cli"
|
||||||
"github.com/ipfs/go-cid"
|
"github.com/ipfs/go-cid"
|
||||||
"github.com/urfave/cli/v2"
|
"github.com/urfave/cli/v2"
|
||||||
@ -21,6 +23,9 @@ type networkTotalsOutput struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type networkTotals struct {
|
type networkTotals struct {
|
||||||
|
QaNetworkPower filbig.Int `json:"total_qa_power"`
|
||||||
|
RawNetworkPower filbig.Int `json:"total_raw_capacity"`
|
||||||
|
CapacityCarryingData float64 `json:"capacity_fraction_carrying_data"`
|
||||||
UniqueCids int `json:"total_unique_cids"`
|
UniqueCids int `json:"total_unique_cids"`
|
||||||
UniqueProviders int `json:"total_unique_providers"`
|
UniqueProviders int `json:"total_unique_providers"`
|
||||||
UniqueClients int `json:"total_unique_clients"`
|
UniqueClients int `json:"total_unique_clients"`
|
||||||
@ -66,6 +71,11 @@ var storageStatsCmd = &cli.Command{
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
power, err := api.StateMinerPower(ctx, address.Address{}, head.Key())
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
netTotals := networkTotals{
|
netTotals := networkTotals{
|
||||||
seenClient: make(map[address.Address]bool),
|
seenClient: make(map[address.Address]bool),
|
||||||
seenProvider: make(map[address.Address]bool),
|
seenProvider: make(map[address.Address]bool),
|
||||||
@ -103,6 +113,13 @@ var storageStatsCmd = &cli.Command{
|
|||||||
netTotals.UniqueClients = len(netTotals.seenClient)
|
netTotals.UniqueClients = len(netTotals.seenClient)
|
||||||
netTotals.UniqueProviders = len(netTotals.seenProvider)
|
netTotals.UniqueProviders = len(netTotals.seenProvider)
|
||||||
|
|
||||||
|
netTotals.QaNetworkPower = power.TotalPower.QualityAdjPower
|
||||||
|
netTotals.RawNetworkPower = power.TotalPower.RawBytePower
|
||||||
|
netTotals.CapacityCarryingData, _ = new(corebig.Rat).SetFrac(
|
||||||
|
corebig.NewInt(netTotals.TotalBytes),
|
||||||
|
power.TotalPower.RawBytePower.Int,
|
||||||
|
).Float64()
|
||||||
|
|
||||||
return json.NewEncoder(os.Stdout).Encode(
|
return json.NewEncoder(os.Stdout).Encode(
|
||||||
networkTotalsOutput{
|
networkTotalsOutput{
|
||||||
Epoch: int64(head.Height()),
|
Epoch: int64(head.Height()),
|
||||||
|
Loading…
Reference in New Issue
Block a user