From dc2a0c1b86c362e2da14b6deb1a7a6c3b69c8884 Mon Sep 17 00:00:00 2001 From: Daniel Liu <139250065@qq.com> Date: Sun, 31 Aug 2025 15:48:35 +0800 Subject: [PATCH] ethclient/gethclient: add method TraceBlock #32092 (#1399) --- ethclient/gethclient/gethclient.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/ethclient/gethclient/gethclient.go b/ethclient/gethclient/gethclient.go index 8b4a719d67..4457fe056d 100644 --- a/ethclient/gethclient/gethclient.go +++ b/ethclient/gethclient/gethclient.go @@ -216,6 +216,17 @@ func (ec *Client) TraceTransaction(ctx context.Context, hash common.Hash, config return result, nil } +// TraceBlock returns the structured logs created during the execution of EVM +// and returns them as a JSON object. +func (ec *Client) TraceBlock(ctx context.Context, hash common.Hash, config *tracers.TraceConfig) (any, error) { + var result any + err := ec.c.CallContext(ctx, &result, "debug_traceBlockByHash", hash, config) + if err != nil { + return nil, err + } + return result, nil +} + func toBlockNumArg(number *big.Int) string { if number == nil { return "latest"