From debb1e7d8935a60e8d42bcc38ab061fbd1ad843e Mon Sep 17 00:00:00 2001 From: Martin Holst Swende Date: Fri, 20 Oct 2023 10:40:41 +0200 Subject: [PATCH] log: add utility to reset global state --- cmd/geth/logtestcmd.go | 1 + log/format.go | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/cmd/geth/logtestcmd.go b/cmd/geth/logtestcmd.go index 19e4c9bf03..6ce859d06e 100644 --- a/cmd/geth/logtestcmd.go +++ b/cmd/geth/logtestcmd.go @@ -31,6 +31,7 @@ import ( // logTest is an entry point which spits out some logs. This is used by testing // to verify expected outputs func logTest(ctx *cli.Context) error { + log.ResetGlobalState() { // big.Int ba, _ := new(big.Int).SetString("111222333444555678999", 10) // "111,222,333,444,555,678,999" bb, _ := new(big.Int).SetString("-111222333444555678999", 10) // "-111,222,333,444,555,678,999" diff --git a/log/format.go b/log/format.go index 1adf79c17e..2fd1f28558 100644 --- a/log/format.go +++ b/log/format.go @@ -24,6 +24,14 @@ const ( termCtxMaxPadding = 40 ) +// ResetGlobalState resets the fieldPadding, which is useful for producing +// predictable output. +func ResetGlobalState() { + fieldPaddingLock.Lock() + fieldPadding = make(map[string]int) + fieldPaddingLock.Unlock() +} + // locationTrims are trimmed for display to avoid unwieldy log lines. var locationTrims = []string{ "github.com/ethereum/go-ethereum/",