cmd/evm, eth/tracers/logger: lint nits

This commit is contained in:
Martin Holst Swende 2024-11-29 14:52:16 +01:00
parent 5f82cec478
commit cd66f17423
No known key found for this signature in database
GPG key ID: 683B438C05A5DDF0
2 changed files with 33 additions and 37 deletions

View file

@ -207,7 +207,6 @@ func runCmd(ctx *cli.Context) error {
var ( var (
tracer *tracing.Hooks tracer *tracing.Hooks
debugLogger *logger.StructLogger
prestate *state.StateDB prestate *state.StateDB
chainConfig *params.ChainConfig chainConfig *params.ChainConfig
sender = common.BytesToAddress([]byte("sender")) sender = common.BytesToAddress([]byte("sender"))
@ -219,10 +218,7 @@ func runCmd(ctx *cli.Context) error {
if ctx.Bool(MachineFlag.Name) { if ctx.Bool(MachineFlag.Name) {
tracer = logger.NewJSONLogger(logconfig, os.Stdout) tracer = logger.NewJSONLogger(logconfig, os.Stdout)
} else if ctx.Bool(DebugFlag.Name) { } else if ctx.Bool(DebugFlag.Name) {
debugLogger = logger.NewStreamingStructLogger(logconfig, os.Stderr) tracer = logger.NewStreamingStructLogger(logconfig, os.Stderr).Hooks()
tracer = debugLogger.Hooks()
} else {
debugLogger = logger.NewStreamingStructLogger(logconfig, os.Stderr)
} }
initialGas := ctx.Uint64(GasFlag.Name) initialGas := ctx.Uint64(GasFlag.Name)

View file

@ -94,31 +94,31 @@ func (s *StructLog) ErrorString() string {
return "" return ""
} }
func (log *StructLog) WriteTo(writer io.Writer) { func (s *StructLog) WriteTo(writer io.Writer) {
fmt.Fprintf(writer, "%-16spc=%08d gas=%v cost=%v", log.Op, log.Pc, log.Gas, log.GasCost) fmt.Fprintf(writer, "%-16spc=%08d gas=%v cost=%v", s.Op, s.Pc, s.Gas, s.GasCost)
if log.Err != nil { if s.Err != nil {
fmt.Fprintf(writer, " ERROR: %v", log.Err) fmt.Fprintf(writer, " ERROR: %v", s.Err)
} }
fmt.Fprintln(writer) fmt.Fprintln(writer)
if len(log.Stack) > 0 { if len(s.Stack) > 0 {
fmt.Fprintln(writer, "Stack:") fmt.Fprintln(writer, "Stack:")
for i := len(log.Stack) - 1; i >= 0; i-- { for i := len(s.Stack) - 1; i >= 0; i-- {
fmt.Fprintf(writer, "%08d %s\n", len(log.Stack)-i-1, log.Stack[i].Hex()) fmt.Fprintf(writer, "%08d %s\n", len(s.Stack)-i-1, s.Stack[i].Hex())
} }
} }
if len(log.Memory) > 0 { if len(s.Memory) > 0 {
fmt.Fprintln(writer, "Memory:") fmt.Fprintln(writer, "Memory:")
fmt.Fprint(writer, hex.Dump(log.Memory)) fmt.Fprint(writer, hex.Dump(s.Memory))
} }
if len(log.Storage) > 0 { if len(s.Storage) > 0 {
fmt.Fprintln(writer, "Storage:") fmt.Fprintln(writer, "Storage:")
for h, item := range log.Storage { for h, item := range s.Storage {
fmt.Fprintf(writer, "%x: %x\n", h, item) fmt.Fprintf(writer, "%x: %x\n", h, item)
} }
} }
if len(log.ReturnData) > 0 { if len(s.ReturnData) > 0 {
fmt.Fprintln(writer, "ReturnData:") fmt.Fprintln(writer, "ReturnData:")
fmt.Fprint(writer, hex.Dump(log.ReturnData)) fmt.Fprint(writer, hex.Dump(s.ReturnData))
} }
fmt.Fprintln(writer) fmt.Fprintln(writer)
} }
@ -148,36 +148,36 @@ type StructLogRes struct {
// - memory: legacy uses a list of 64-char strings, each representing 32-byte chunks // - memory: legacy uses a list of 64-char strings, each representing 32-byte chunks
// of evm memory. Non-legacy just uses a string of hexdata, no chunking. // of evm memory. Non-legacy just uses a string of hexdata, no chunking.
// - storage: legacy has a storage-field. // - storage: legacy has a storage-field.
func (log *StructLog) toLegacyJSON() json.RawMessage { func (s *StructLog) toLegacyJSON() json.RawMessage {
msg := StructLogRes{ msg := StructLogRes{
Pc: log.Pc, Pc: s.Pc,
Op: log.Op.String(), Op: s.Op.String(),
Gas: log.Gas, Gas: s.Gas,
GasCost: log.GasCost, GasCost: s.GasCost,
Depth: log.Depth, Depth: s.Depth,
Error: log.ErrorString(), Error: s.ErrorString(),
RefundCounter: log.RefundCounter, RefundCounter: s.RefundCounter,
} }
if log.Stack != nil { if s.Stack != nil {
stack := make([]string, len(log.Stack)) stack := make([]string, len(s.Stack))
for i, stackValue := range log.Stack { for i, stackValue := range s.Stack {
stack[i] = stackValue.Hex() stack[i] = stackValue.Hex()
} }
msg.Stack = &stack msg.Stack = &stack
} }
if len(log.ReturnData) > 0 { if len(s.ReturnData) > 0 {
msg.ReturnData = hexutil.Bytes(log.ReturnData).String() msg.ReturnData = hexutil.Bytes(s.ReturnData).String()
} }
if log.Memory != nil { if s.Memory != nil {
memory := make([]string, 0, (len(log.Memory)+31)/32) memory := make([]string, 0, (len(s.Memory)+31)/32)
for i := 0; i+32 <= len(log.Memory); i += 32 { for i := 0; i+32 <= len(s.Memory); i += 32 {
memory = append(memory, fmt.Sprintf("%x", log.Memory[i:i+32])) memory = append(memory, fmt.Sprintf("%x", s.Memory[i:i+32]))
} }
msg.Memory = &memory msg.Memory = &memory
} }
if log.Storage != nil { if s.Storage != nil {
storage := make(map[string]string) storage := make(map[string]string)
for i, storageValue := range log.Storage { for i, storageValue := range s.Storage {
storage[fmt.Sprintf("%x", i)] = fmt.Sprintf("%x", storageValue) storage[fmt.Sprintf("%x", i)] = fmt.Sprintf("%x", storageValue)
} }
msg.Storage = &storage msg.Storage = &storage