From cdc1133880f2c418c13a13ea4d99e097b85c6980 Mon Sep 17 00:00:00 2001 From: GarmashAlex Date: Wed, 29 Oct 2025 13:27:32 +0300 Subject: [PATCH] logger/json: implement OnFaultV2 and wire into hooks to include rData on faults --- eth/tracers/logger/logger_json.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/eth/tracers/logger/logger_json.go b/eth/tracers/logger/logger_json.go index 52ac3945d4..60a3b522df 100644 --- a/eth/tracers/logger/logger_json.go +++ b/eth/tracers/logger/logger_json.go @@ -74,6 +74,7 @@ func NewJSONLogger(cfg *Config, writer io.Writer) *tracing.Hooks { OnExit: l.OnExit, OnOpcode: l.OnOpcode, OnFault: l.OnFault, + OnFaultV2: l.OnFaultV2, } return l.hooks } @@ -92,15 +93,19 @@ func NewJSONLoggerWithCallFrames(cfg *Config, writer io.Writer) *tracing.Hooks { OnExit: l.OnExit, OnOpcode: l.OnOpcode, OnFault: l.OnFault, + OnFaultV2: l.OnFaultV2, } return l.hooks } func (l *jsonLogger) OnFault(pc uint64, op byte, gas uint64, cost uint64, scope tracing.OpContext, depth int, err error) { - // TODO: Add rData to this interface as well l.OnOpcode(pc, op, gas, cost, scope, nil, depth, err) } +func (l *jsonLogger) OnFaultV2(pc uint64, op byte, gas uint64, cost uint64, scope tracing.OpContext, rData []byte, depth int, err error) { + l.OnOpcode(pc, op, gas, cost, scope, rData, depth, err) +} + func (l *jsonLogger) OnOpcode(pc uint64, op byte, gas, cost uint64, scope tracing.OpContext, rData []byte, depth int, err error) { memory := scope.MemoryData() stack := scope.StackData()