diff --git a/zetaclient/bitcoin_client.go b/zetaclient/bitcoin_client.go index 0ff4ffa6b4..e926a4a56c 100644 --- a/zetaclient/bitcoin_client.go +++ b/zetaclient/bitcoin_client.go @@ -591,6 +591,7 @@ func (ob *BitcoinChainClient) fetchUTXOS() error { filtered = append(filtered, utxo) } } + ob.ts.SetNumberOfUTXOs(len(utxos), len(filtered)) // sort by value sort.Slice(filtered, func(i, j int) bool { return filtered[i].Amount < filtered[j].Amount diff --git a/zetaclient/telemetry.go b/zetaclient/telemetry.go index ea102342d1..aa3d7ab7cf 100644 --- a/zetaclient/telemetry.go +++ b/zetaclient/telemetry.go @@ -7,7 +7,6 @@ import ( "fmt" "github.com/zeta-chain/zetacore/common" "net/http" - "net/http/pprof" "sync" "time" @@ -102,6 +101,13 @@ func (t *TelemetryServer) GetNextNonce() int { return t.status.BTCNextNonce } +func (t *TelemetryServer) SetNumberOfUTXOs(numberOfUTXOs, numberOfFilteredUTXOs int) { + t.mu.Lock() + t.status.BTCNumberOfUTXOs = numberOfUTXOs + t.status.BTCNumberOfFilteredUTXOs = numberOfFilteredUTXOs + t.mu.Unlock() +} + // NewHandler registers the API routes and returns a new HTTP handler func (t *TelemetryServer) Handlers() http.Handler { router := mux.NewRouter() @@ -112,10 +118,10 @@ func (t *TelemetryServer) Handlers() http.Handler { router.Handle("/laststarttimestamp", http.HandlerFunc(t.lastStartTimestampHandler)).Methods(http.MethodGet) router.Handle("/lastcoreblock", http.HandlerFunc(t.lastCoreBlockHandler)).Methods(http.MethodGet) router.Handle("/status", http.HandlerFunc(t.statusHandler)).Methods(http.MethodGet) - router.Handle("/debug/pprof/goroutine", pprof.Handler("goroutine")) - router.Handle("/debug/pprof/heap", pprof.Handler("heap")) - router.HandleFunc("/debug/pprof/", pprof.Index) - router.HandleFunc("/debug/pprof/cmdline", pprof.Cmdline) + // router.Handle("/debug/pprof/goroutine", pprof.Handler("goroutine")) + // router.Handle("/debug/pprof/heap", pprof.Handler("heap")) + // router.HandleFunc("/debug/pprof/", pprof.Index) + // router.HandleFunc("/debug/pprof/cmdline", pprof.Cmdline) //router.Handle("/pending", http.HandlerFunc(t.pendingHandler)).Methods(http.MethodGet) router.Use(logMiddleware()) diff --git a/zetaclient/types/telemetry_types.go b/zetaclient/types/telemetry_types.go index b5f15f7f01..32dc522b4c 100644 --- a/zetaclient/types/telemetry_types.go +++ b/zetaclient/types/telemetry_types.go @@ -2,5 +2,7 @@ package types // Status type for telemetry. More fields can be added as needed type Status struct { - BTCNextNonce int `json:"btc_next_nonce"` + BTCNextNonce int `json:"btc_next_nonce"` + BTCNumberOfUTXOs int `json:"btc_number_of_utxos"` + BTCNumberOfFilteredUTXOs int `json:"btc_number_of_filtered_utxos"` }