From 638c80bd08a58d573cf8fa795345bd12681c28d9 Mon Sep 17 00:00:00 2001 From: Jeffery Walsh Date: Mon, 25 Sep 2023 14:57:47 -0700 Subject: [PATCH 1/5] add capacity logs as requested by community --- prover/capacity_manager/capacity_manager.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/prover/capacity_manager/capacity_manager.go b/prover/capacity_manager/capacity_manager.go index 27355c4fd..384892144 100644 --- a/prover/capacity_manager/capacity_manager.go +++ b/prover/capacity_manager/capacity_manager.go @@ -2,6 +2,8 @@ package capacity_manager import ( "sync" + + "github.com/ethereum/go-ethereum/log" ) // CapacityManager manages the prover capacity concurrent-safely. @@ -20,6 +22,8 @@ func (m *CapacityManager) ReadCapacity() uint64 { m.mutex.RLock() defer m.mutex.RUnlock() + log.Info("reading capacity", "capacity", m.capacity) + return m.capacity } @@ -29,10 +33,13 @@ func (m *CapacityManager) ReleaseOneCapacity() uint64 { defer m.mutex.Unlock() m.capacity += 1 + + log.Info("released capacity", "capacityAfterRelease", m.capacity) + return m.capacity } -// TakeOneCapacity takes one capacitĀ·y. +// TakeOneCapacity takes one capacity. func (m *CapacityManager) TakeOneCapacity() (uint64, bool) { m.mutex.Lock() defer m.mutex.Unlock() @@ -42,5 +49,8 @@ func (m *CapacityManager) TakeOneCapacity() (uint64, bool) { } m.capacity -= 1 + + log.Info("took one capacity", "capacityAfterTaking", m.capacity) + return m.capacity, true } From 349728f687716dea478b0f0e3a8c0ab5a75fe448 Mon Sep 17 00:00:00 2001 From: Jeffery Walsh Date: Mon, 25 Sep 2023 14:58:05 -0700 Subject: [PATCH 2/5] log --- prover/capacity_manager/capacity_manager.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/prover/capacity_manager/capacity_manager.go b/prover/capacity_manager/capacity_manager.go index 384892144..6535a43cc 100644 --- a/prover/capacity_manager/capacity_manager.go +++ b/prover/capacity_manager/capacity_manager.go @@ -45,6 +45,8 @@ func (m *CapacityManager) TakeOneCapacity() (uint64, bool) { defer m.mutex.Unlock() if m.capacity == 0 { + log.Info("could not take one capacity", "capacity", m.capacity) + return 0, false } From a657400b942eaacc4f6c82e0b8fd6e879f3cd98f Mon Sep 17 00:00:00 2001 From: Jeffery Walsh Date: Mon, 25 Sep 2023 15:31:58 -0700 Subject: [PATCH 3/5] addtl logs --- pkg/rpc/utils.go | 6 ++++++ prover/server/api.go | 2 ++ 2 files changed, 8 insertions(+) diff --git a/pkg/rpc/utils.go b/pkg/rpc/utils.go index 664254c37..af76216c5 100644 --- a/pkg/rpc/utils.go +++ b/pkg/rpc/utils.go @@ -54,6 +54,8 @@ func CheckProverBalance( return false, err } + log.Info("prover's deposited taikoTokenBalance", "balance", depositedBalance.String(), "address", prover.Hex()) + if bond.Cmp(depositedBalance) > 0 { // Check allowance on taiko token contract allowance, err := rpc.TaikoToken.Allowance(&bind.CallOpts{Context: ctxWithTimeout}, prover, taikoL1Address) @@ -61,12 +63,16 @@ func CheckProverBalance( return false, err } + log.Info("prover allowance for TaikoL1 contract", "allowance", allowance.String(), "address", prover.Hex()) + // Check prover's taiko token balance balance, err := rpc.TaikoToken.BalanceOf(&bind.CallOpts{Context: ctxWithTimeout}, prover) if err != nil { return false, err } + log.Info("prover's wallet taiko token balance", "balance", balance.String(), "address", prover.Hex()) + if bond.Cmp(allowance) > 0 || bond.Cmp(balance) > 0 { log.Info( "Assigned prover does not have required on-chain token balance or allowance", diff --git a/prover/server/api.go b/prover/server/api.go index 8045494ab..a355cebd4 100644 --- a/prover/server/api.go +++ b/prover/server/api.go @@ -80,10 +80,12 @@ func (srv *ProverServer) CreateAssignment(c echo.Context) error { } if req.Fee.Cmp(srv.minProofFee) < 0 { + log.Warn("Proof fee too low", "reqFee", req.Fee.String(), "srvMinProofFee", srv.minProofFee.String()) return echo.NewHTTPError(http.StatusUnprocessableEntity, "proof fee too low") } if req.Expiry > uint64(time.Now().Add(srv.maxExpiry).Unix()) { + log.Warn("Expiry too long", "requestExpiry", req.Expiry, "srvMaxExpiry", srv.maxExpiry) return echo.NewHTTPError(http.StatusUnprocessableEntity, "expiry too long") } From 33e39ee539ecba7f5b1d6610ae76c61c58c194fd Mon Sep 17 00:00:00 2001 From: Jeffery Walsh Date: Mon, 25 Sep 2023 15:35:14 -0700 Subject: [PATCH 4/5] add proposerIP to the log --- prover/server/api.go | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/prover/server/api.go b/prover/server/api.go index a355cebd4..a37171886 100644 --- a/prover/server/api.go +++ b/prover/server/api.go @@ -80,17 +80,25 @@ func (srv *ProverServer) CreateAssignment(c echo.Context) error { } if req.Fee.Cmp(srv.minProofFee) < 0 { - log.Warn("Proof fee too low", "reqFee", req.Fee.String(), "srvMinProofFee", srv.minProofFee.String()) + log.Warn("Proof fee too low", + "reqFee", req.Fee.String(), + "srvMinProofFee", srv.minProofFee.String(), + "proposerIP", c.RealIP(), + ) return echo.NewHTTPError(http.StatusUnprocessableEntity, "proof fee too low") } if req.Expiry > uint64(time.Now().Add(srv.maxExpiry).Unix()) { - log.Warn("Expiry too long", "requestExpiry", req.Expiry, "srvMaxExpiry", srv.maxExpiry) + log.Warn("Expiry too long", + "requestExpiry", req.Expiry, + "srvMaxExpiry", srv.maxExpiry, + "proposerIP", c.RealIP(), + ) return echo.NewHTTPError(http.StatusUnprocessableEntity, "expiry too long") } if srv.capacityManager.ReadCapacity() == 0 { - log.Warn("Prover does not have capacity") + log.Warn("Prover does not have capacity", "proposerIP", c.RealIP()) return echo.NewHTTPError(http.StatusUnprocessableEntity, "prover does not have capacity") } From 49c849920fdd4db6e50ae77ba72658f5b7e61640 Mon Sep 17 00:00:00 2001 From: David Date: Tue, 26 Sep 2023 13:04:56 +0800 Subject: [PATCH 5/5] chore: format --- pkg/rpc/utils.go | 6 +++--- prover/capacity_manager/capacity_manager.go | 9 ++++----- prover/server/api.go | 6 ++++-- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/pkg/rpc/utils.go b/pkg/rpc/utils.go index af76216c5..d889d884e 100644 --- a/pkg/rpc/utils.go +++ b/pkg/rpc/utils.go @@ -54,7 +54,7 @@ func CheckProverBalance( return false, err } - log.Info("prover's deposited taikoTokenBalance", "balance", depositedBalance.String(), "address", prover.Hex()) + log.Info("Prover's deposited taikoTokenBalance", "balance", depositedBalance.String(), "address", prover.Hex()) if bond.Cmp(depositedBalance) > 0 { // Check allowance on taiko token contract @@ -63,7 +63,7 @@ func CheckProverBalance( return false, err } - log.Info("prover allowance for TaikoL1 contract", "allowance", allowance.String(), "address", prover.Hex()) + log.Info("Prover allowance for TaikoL1 contract", "allowance", allowance.String(), "address", prover.Hex()) // Check prover's taiko token balance balance, err := rpc.TaikoToken.BalanceOf(&bind.CallOpts{Context: ctxWithTimeout}, prover) @@ -71,7 +71,7 @@ func CheckProverBalance( return false, err } - log.Info("prover's wallet taiko token balance", "balance", balance.String(), "address", prover.Hex()) + log.Info("Prover's wallet taiko token balance", "balance", balance.String(), "address", prover.Hex()) if bond.Cmp(allowance) > 0 || bond.Cmp(balance) > 0 { log.Info( diff --git a/prover/capacity_manager/capacity_manager.go b/prover/capacity_manager/capacity_manager.go index 6535a43cc..78164f1cf 100644 --- a/prover/capacity_manager/capacity_manager.go +++ b/prover/capacity_manager/capacity_manager.go @@ -22,7 +22,7 @@ func (m *CapacityManager) ReadCapacity() uint64 { m.mutex.RLock() defer m.mutex.RUnlock() - log.Info("reading capacity", "capacity", m.capacity) + log.Info("Reading capacity", "capacity", m.capacity) return m.capacity } @@ -34,7 +34,7 @@ func (m *CapacityManager) ReleaseOneCapacity() uint64 { m.capacity += 1 - log.Info("released capacity", "capacityAfterRelease", m.capacity) + log.Info("Released capacity", "capacityAfterRelease", m.capacity) return m.capacity } @@ -45,14 +45,13 @@ func (m *CapacityManager) TakeOneCapacity() (uint64, bool) { defer m.mutex.Unlock() if m.capacity == 0 { - log.Info("could not take one capacity", "capacity", m.capacity) - + log.Info("Could not take one capacity", "capacity", m.capacity) return 0, false } m.capacity -= 1 - log.Info("took one capacity", "capacityAfterTaking", m.capacity) + log.Info("Took one capacity", "capacityAfterTaking", m.capacity) return m.capacity, true } diff --git a/prover/server/api.go b/prover/server/api.go index a37171886..921d81145 100644 --- a/prover/server/api.go +++ b/prover/server/api.go @@ -80,7 +80,8 @@ func (srv *ProverServer) CreateAssignment(c echo.Context) error { } if req.Fee.Cmp(srv.minProofFee) < 0 { - log.Warn("Proof fee too low", + log.Warn( + "Proof fee too low", "reqFee", req.Fee.String(), "srvMinProofFee", srv.minProofFee.String(), "proposerIP", c.RealIP(), @@ -89,7 +90,8 @@ func (srv *ProverServer) CreateAssignment(c echo.Context) error { } if req.Expiry > uint64(time.Now().Add(srv.maxExpiry).Unix()) { - log.Warn("Expiry too long", + log.Warn( + "Expiry too long", "requestExpiry", req.Expiry, "srvMaxExpiry", srv.maxExpiry, "proposerIP", c.RealIP(),