@@ -22,11 +22,10 @@ import (
2222 "strings"
2323 "strconv"
2424 "github.com/prometheus/client_golang/prometheus"
25- "fmt"
2625)
2726
2827func FairShareData () []byte {
29- cmd := exec .Command ( "sshare" , "-n" , "-P" , "-o" , "account,fairshare" , "|" , "grep '^ [a-z]'" )
28+ cmd := exec .Command ( "sshare" , "-n" , "-P" , "-o" , "account,fairshare" )
3029 stdout , err := cmd .StdoutPipe ()
3130 if err != nil {
3231 log .Fatal (err )
@@ -49,15 +48,16 @@ func ParseFairShareMetrics() map[string]*FairShareMetrics {
4948 accounts := make (map [string ]* FairShareMetrics )
5049 lines := strings .Split (string (FairShareData ()), "\n " )
5150 for _ , line := range lines {
52- fmt .Printf (line )
53- if strings .Contains (line ,"|" ) {
54- account := strings .Split (line ,"|" )[0 ]
55- _ ,key := accounts [account ]
56- if ! key {
57- accounts [account ] = & FairShareMetrics {0 }
51+ if ! strings .HasPrefix (line ," " ) {
52+ if strings .Contains (line ,"|" ) {
53+ account := strings .Split (line ,"|" )[0 ]
54+ _ ,key := accounts [account ]
55+ if ! key {
56+ accounts [account ] = & FairShareMetrics {0 }
57+ }
58+ fairshare ,_ := strconv .ParseFloat (strings .Split (line ,"|" )[1 ],64 )
59+ accounts [account ].fairshare = fairshare
5860 }
59- fairshare ,_ := strconv .ParseFloat (strings .Split (line ,"|" )[1 ],64 )
60- accounts [account ].fairshare = fairshare
6161 }
6262 }
6363 return accounts
0 commit comments