From 7798de556a2d43f84aaaae1e2f0c3e202e8e5e81 Mon Sep 17 00:00:00 2001 From: Martin Holst Swende Date: Fri, 20 Oct 2023 12:57:25 +0200 Subject: [PATCH] cmd/geth: add test-vectors for column alignment --- cmd/geth/logtestcmd.go | 8 ++ cmd/geth/testdata/logging/logtest-logfmt.txt | 73 ++++++++++--------- .../testdata/logging/logtest-terminal.txt | 73 ++++++++++--------- 3 files changed, 86 insertions(+), 68 deletions(-) diff --git a/cmd/geth/logtestcmd.go b/cmd/geth/logtestcmd.go index db9cbabd2a..1a9491354a 100644 --- a/cmd/geth/logtestcmd.go +++ b/cmd/geth/logtestcmd.go @@ -111,5 +111,13 @@ func logTest(ctx *cli.Context) error { log.Info("test", "bar", "a long message", "a", 1) log.Info("test", "bar", "short", "a", "aligned right") } + { + // This sequence of logs should be output with alignment, so each field becoems a column. + log.Info("The following logs should align so that the key-fields make 5 columns") + log.Info("Inserted known block", "number", 1_012, "hash", common.HexToHash("0x1234"), "txs", 200, "gas", 1_123_123, "other", "first") + log.Info("Inserted new block", "number", 1, "hash", common.HexToHash("0x1235"), "txs", 2, "gas", 1_123, "other", "second") + log.Info("Inserted known block", "number", 99, "hash", common.HexToHash("0x12322"), "txs", 10, "gas", 1, "other", "third") + log.Warn("Inserted known block", "number", 1_012, "hash", common.HexToHash("0x1234"), "txs", 200, "gas", 99, "other", "fourth") + } return nil } diff --git a/cmd/geth/testdata/logging/logtest-logfmt.txt b/cmd/geth/testdata/logging/logtest-logfmt.txt index 9410545e54..79f29e1fae 100644 --- a/cmd/geth/testdata/logging/logtest-logfmt.txt +++ b/cmd/geth/testdata/logging/logtest-logfmt.txt @@ -1,34 +1,39 @@ -t=2023-10-20T08:30:18+0200 lvl=info msg=big.Int 111,222,333,444,555,678,999=111,222,333,444,555,678,999 -t=2023-10-20T08:30:18+0200 lvl=info msg=-big.Int -111,222,333,444,555,678,999=-111,222,333,444,555,678,999 -t=2023-10-20T08:30:18+0200 lvl=info msg=big.Int 11,122,233,344,455,567,899,900=11,122,233,344,455,567,899,900 -t=2023-10-20T08:30:18+0200 lvl=info msg=-big.Int -11,122,233,344,455,567,899,900=-11,122,233,344,455,567,899,900 -t=2023-10-20T08:30:18+0200 lvl=info msg=uint256 111,222,333,444,555,678,999=111,222,333,444,555,678,999 -t=2023-10-20T08:30:18+0200 lvl=info msg=uint256 11,122,233,344,455,567,899,900=11,122,233,344,455,567,899,900 -t=2023-10-20T08:30:18+0200 lvl=info msg=int64 1,000,000=1,000,000 -t=2023-10-20T08:30:18+0200 lvl=info msg=int64 -1,000,000=-1,000,000 -t=2023-10-20T08:30:18+0200 lvl=info msg=int64 9,223,372,036,854,775,807=9,223,372,036,854,775,807 -t=2023-10-20T08:30:18+0200 lvl=info msg=int64 -9,223,372,036,854,775,808=-9,223,372,036,854,775,808 -t=2023-10-20T08:30:18+0200 lvl=info msg=uint64 1,000,000=1,000,000 -t=2023-10-20T08:30:18+0200 lvl=info msg=uint64 18,446,744,073,709,551,615=18,446,744,073,709,551,615 -t=2023-10-20T08:30:18+0200 lvl=info msg="Special chars in value" key="special \r\n\t chars" -t=2023-10-20T08:30:18+0200 lvl=info msg="Special chars in key" "special \n\t chars"=value -t=2023-10-20T08:30:18+0200 lvl=info msg=nospace nospace=nospace -t=2023-10-20T08:30:18+0200 lvl=info msg="with space" "with nospace"="with nospace" -t=2023-10-20T08:30:18+0200 lvl=info msg="Bash escapes in value" key="\x1b[1G\x1b[K\x1b[1A" -t=2023-10-20T08:30:18+0200 lvl=info msg="Bash escapes in key" "\x1b[1G\x1b[K\x1b[1A"=value -t=2023-10-20T08:30:18+0200 lvl=info msg="Bash escapes in message \x1b[1G\x1b[K\x1b[1A end" key=value -t=2023-10-20T08:30:18+0200 lvl=info msg="\x1b[35mColored\x1b[0m[" "\x1b[35mColored\x1b[0m["="\x1b[35mColored\x1b[0m[" -t=2023-10-20T08:30:18+0200 lvl=info msg="Custom Stringer value" 2562047h47m16.854s=2562047h47m16.854s -t=2023-10-20T08:30:18+0200 lvl=info msg="Lazy evaluation of value" key="lazy value" -t=2023-10-20T08:30:18+0200 lvl=info msg="A message with wonky 💩 characters" -t=2023-10-20T08:30:18+0200 lvl=info msg="A multiline message \nINFO [10-18|14:11:31.106] with wonky characters 💩" -t=2023-10-20T08:30:18+0200 lvl=info msg="A multiline message \nLALA [ZZZZZZZZZZZZZZZZZZ] Actually part of message above" -t=2023-10-20T08:30:18+0200 lvl=info msg=boolean true=true false=false -t=2023-10-20T08:30:18+0200 lvl=info msg="repeated-key 1" foo=alpha foo=beta -t=2023-10-20T08:30:18+0200 lvl=info msg="repeated-key 2" xx=short xx=longer -t=2023-10-20T08:30:18+0200 lvl=info msg="log at level info" -t=2023-10-20T08:30:18+0200 lvl=warn msg="log at level warn" -t=2023-10-20T08:30:18+0200 lvl=eror msg="log at level error" -t=2023-10-20T08:30:18+0200 lvl=info msg=test bar=short a="aligned left" -t=2023-10-20T08:30:18+0200 lvl=info msg=test bar="a long message" a=1 -t=2023-10-20T08:30:18+0200 lvl=info msg=test bar=short a="aligned right" +t=2023-10-20T12:56:08+0200 lvl=info msg=big.Int 111,222,333,444,555,678,999=111,222,333,444,555,678,999 +t=2023-10-20T12:56:08+0200 lvl=info msg=-big.Int -111,222,333,444,555,678,999=-111,222,333,444,555,678,999 +t=2023-10-20T12:56:08+0200 lvl=info msg=big.Int 11,122,233,344,455,567,899,900=11,122,233,344,455,567,899,900 +t=2023-10-20T12:56:08+0200 lvl=info msg=-big.Int -11,122,233,344,455,567,899,900=-11,122,233,344,455,567,899,900 +t=2023-10-20T12:56:08+0200 lvl=info msg=uint256 111,222,333,444,555,678,999=111,222,333,444,555,678,999 +t=2023-10-20T12:56:08+0200 lvl=info msg=uint256 11,122,233,344,455,567,899,900=11,122,233,344,455,567,899,900 +t=2023-10-20T12:56:08+0200 lvl=info msg=int64 1,000,000=1,000,000 +t=2023-10-20T12:56:08+0200 lvl=info msg=int64 -1,000,000=-1,000,000 +t=2023-10-20T12:56:08+0200 lvl=info msg=int64 9,223,372,036,854,775,807=9,223,372,036,854,775,807 +t=2023-10-20T12:56:08+0200 lvl=info msg=int64 -9,223,372,036,854,775,808=-9,223,372,036,854,775,808 +t=2023-10-20T12:56:08+0200 lvl=info msg=uint64 1,000,000=1,000,000 +t=2023-10-20T12:56:08+0200 lvl=info msg=uint64 18,446,744,073,709,551,615=18,446,744,073,709,551,615 +t=2023-10-20T12:56:08+0200 lvl=info msg="Special chars in value" key="special \r\n\t chars" +t=2023-10-20T12:56:08+0200 lvl=info msg="Special chars in key" "special \n\t chars"=value +t=2023-10-20T12:56:08+0200 lvl=info msg=nospace nospace=nospace +t=2023-10-20T12:56:08+0200 lvl=info msg="with space" "with nospace"="with nospace" +t=2023-10-20T12:56:08+0200 lvl=info msg="Bash escapes in value" key="\x1b[1G\x1b[K\x1b[1A" +t=2023-10-20T12:56:08+0200 lvl=info msg="Bash escapes in key" "\x1b[1G\x1b[K\x1b[1A"=value +t=2023-10-20T12:56:08+0200 lvl=info msg="Bash escapes in message \x1b[1G\x1b[K\x1b[1A end" key=value +t=2023-10-20T12:56:08+0200 lvl=info msg="\x1b[35mColored\x1b[0m[" "\x1b[35mColored\x1b[0m["="\x1b[35mColored\x1b[0m[" +t=2023-10-20T12:56:08+0200 lvl=info msg="Custom Stringer value" 2562047h47m16.854s=2562047h47m16.854s +t=2023-10-20T12:56:08+0200 lvl=info msg="Lazy evaluation of value" key="lazy value" +t=2023-10-20T12:56:08+0200 lvl=info msg="A message with wonky 💩 characters" +t=2023-10-20T12:56:08+0200 lvl=info msg="A multiline message \nINFO [10-18|14:11:31.106] with wonky characters 💩" +t=2023-10-20T12:56:08+0200 lvl=info msg="A multiline message \nLALA [ZZZZZZZZZZZZZZZZZZ] Actually part of message above" +t=2023-10-20T12:56:08+0200 lvl=info msg=boolean true=true false=false +t=2023-10-20T12:56:08+0200 lvl=info msg="repeated-key 1" foo=alpha foo=beta +t=2023-10-20T12:56:08+0200 lvl=info msg="repeated-key 2" xx=short xx=longer +t=2023-10-20T12:56:08+0200 lvl=info msg="log at level info" +t=2023-10-20T12:56:08+0200 lvl=warn msg="log at level warn" +t=2023-10-20T12:56:08+0200 lvl=eror msg="log at level error" +t=2023-10-20T12:56:08+0200 lvl=info msg=test bar=short a="aligned left" +t=2023-10-20T12:56:08+0200 lvl=info msg=test bar="a long message" a=1 +t=2023-10-20T12:56:08+0200 lvl=info msg=test bar=short a="aligned right" +t=2023-10-20T12:56:08+0200 lvl=info msg="The following logs should align so that the key-fields make 5 columns" +t=2023-10-20T12:56:08+0200 lvl=info msg="Inserted known block" number=1012 hash=0x0000000000000000000000000000000000000000000000000000000000001234 txs=200 gas=1,123,123 other=first +t=2023-10-20T12:56:08+0200 lvl=info msg="Inserted new block" number=1 hash=0x0000000000000000000000000000000000000000000000000000000000001235 txs=2 gas=1123 other=second +t=2023-10-20T12:56:08+0200 lvl=info msg="Inserted known block" number=99 hash=0x0000000000000000000000000000000000000000000000000000000000012322 txs=10 gas=1 other=third +t=2023-10-20T12:56:08+0200 lvl=warn msg="Inserted known block" number=1012 hash=0x0000000000000000000000000000000000000000000000000000000000001234 txs=200 gas=99 other=fourth diff --git a/cmd/geth/testdata/logging/logtest-terminal.txt b/cmd/geth/testdata/logging/logtest-terminal.txt index 14eb2dfc13..ff68b6047a 100644 --- a/cmd/geth/testdata/logging/logtest-terminal.txt +++ b/cmd/geth/testdata/logging/logtest-terminal.txt @@ -1,35 +1,40 @@ -INFO [10-20|08:30:28.192] big.Int 111,222,333,444,555,678,999=111,222,333,444,555,678,999 -INFO [10-20|08:30:28.192] -big.Int -111,222,333,444,555,678,999=-111,222,333,444,555,678,999 -INFO [10-20|08:30:28.192] big.Int 11,122,233,344,455,567,899,900=11,122,233,344,455,567,899,900 -INFO [10-20|08:30:28.192] -big.Int -11,122,233,344,455,567,899,900=-11,122,233,344,455,567,899,900 -INFO [10-20|08:30:28.192] uint256 111,222,333,444,555,678,999=111,222,333,444,555,678,999 -INFO [10-20|08:30:28.192] uint256 11,122,233,344,455,567,899,900=11,122,233,344,455,567,899,900 -INFO [10-20|08:30:28.192] int64 1,000,000=1,000,000 -INFO [10-20|08:30:28.192] int64 -1,000,000=-1,000,000 -INFO [10-20|08:30:28.192] int64 9,223,372,036,854,775,807=9,223,372,036,854,775,807 -INFO [10-20|08:30:28.192] int64 -9,223,372,036,854,775,808=-9,223,372,036,854,775,808 -INFO [10-20|08:30:28.192] uint64 1,000,000=1,000,000 -INFO [10-20|08:30:28.192] uint64 18,446,744,073,709,551,615=18,446,744,073,709,551,615 -INFO [10-20|08:30:28.192] Special chars in value key="special \r\n\t chars" -INFO [10-20|08:30:28.192] Special chars in key "special \n\t chars"=value -INFO [10-20|08:30:28.192] nospace nospace=nospace -INFO [10-20|08:30:28.192] with space "with nospace"="with nospace" -INFO [10-20|08:30:28.192] Bash escapes in value key="\x1b[1G\x1b[K\x1b[1A" -INFO [10-20|08:30:28.192] Bash escapes in key "\x1b[1G\x1b[K\x1b[1A"=value -INFO [10-20|08:30:28.192] "Bash escapes in message \x1b[1G\x1b[K\x1b[1A end" key=value -INFO [10-20|08:30:28.192] "\x1b[35mColored\x1b[0m[" "\x1b[35mColored\x1b[0m["="\x1b[35mColored\x1b[0m[" -INFO [10-20|08:30:28.192] Custom Stringer value 2562047h47m16.854s=2562047h47m16.854s -INFO [10-20|08:30:28.192] Lazy evaluation of value key="lazy value" -INFO [10-20|08:30:28.192] "A message with wonky 💩 characters" -INFO [10-20|08:30:28.192] "A multiline message \nINFO [10-18|14:11:31.106] with wonky characters 💩" -INFO [10-20|08:30:28.192] A multiline message +INFO [10-20|12:56:42.532] big.Int 111,222,333,444,555,678,999=111,222,333,444,555,678,999 +INFO [10-20|12:56:42.532] -big.Int -111,222,333,444,555,678,999=-111,222,333,444,555,678,999 +INFO [10-20|12:56:42.532] big.Int 11,122,233,344,455,567,899,900=11,122,233,344,455,567,899,900 +INFO [10-20|12:56:42.532] -big.Int -11,122,233,344,455,567,899,900=-11,122,233,344,455,567,899,900 +INFO [10-20|12:56:42.532] uint256 111,222,333,444,555,678,999=111,222,333,444,555,678,999 +INFO [10-20|12:56:42.532] uint256 11,122,233,344,455,567,899,900=11,122,233,344,455,567,899,900 +INFO [10-20|12:56:42.532] int64 1,000,000=1,000,000 +INFO [10-20|12:56:42.532] int64 -1,000,000=-1,000,000 +INFO [10-20|12:56:42.532] int64 9,223,372,036,854,775,807=9,223,372,036,854,775,807 +INFO [10-20|12:56:42.532] int64 -9,223,372,036,854,775,808=-9,223,372,036,854,775,808 +INFO [10-20|12:56:42.532] uint64 1,000,000=1,000,000 +INFO [10-20|12:56:42.532] uint64 18,446,744,073,709,551,615=18,446,744,073,709,551,615 +INFO [10-20|12:56:42.532] Special chars in value key="special \r\n\t chars" +INFO [10-20|12:56:42.532] Special chars in key "special \n\t chars"=value +INFO [10-20|12:56:42.532] nospace nospace=nospace +INFO [10-20|12:56:42.532] with space "with nospace"="with nospace" +INFO [10-20|12:56:42.532] Bash escapes in value key="\x1b[1G\x1b[K\x1b[1A" +INFO [10-20|12:56:42.532] Bash escapes in key "\x1b[1G\x1b[K\x1b[1A"=value +INFO [10-20|12:56:42.532] "Bash escapes in message \x1b[1G\x1b[K\x1b[1A end" key=value +INFO [10-20|12:56:42.532] "\x1b[35mColored\x1b[0m[" "\x1b[35mColored\x1b[0m["="\x1b[35mColored\x1b[0m[" +INFO [10-20|12:56:42.532] Custom Stringer value 2562047h47m16.854s=2562047h47m16.854s +INFO [10-20|12:56:42.532] Lazy evaluation of value key="lazy value" +INFO [10-20|12:56:42.532] "A message with wonky 💩 characters" +INFO [10-20|12:56:42.532] "A multiline message \nINFO [10-18|14:11:31.106] with wonky characters 💩" +INFO [10-20|12:56:42.532] A multiline message LALA [ZZZZZZZZZZZZZZZZZZ] Actually part of message above -INFO [10-20|08:30:28.192] boolean true=true false=false -INFO [10-20|08:30:28.192] repeated-key 1 foo=alpha foo=beta -INFO [10-20|08:30:28.192] repeated-key 2 xx=short xx=longer -INFO [10-20|08:30:28.192] log at level info -WARN [10-20|08:30:28.192] log at level warn -ERROR[10-20|08:30:28.192] log at level error -INFO [10-20|08:30:28.192] test bar=short a="aligned left" -INFO [10-20|08:30:28.192] test bar="a long message" a=1 -INFO [10-20|08:30:28.192] test bar=short a="aligned right" +INFO [10-20|12:56:42.532] boolean true=true false=false +INFO [10-20|12:56:42.532] repeated-key 1 foo=alpha foo=beta +INFO [10-20|12:56:42.532] repeated-key 2 xx=short xx=longer +INFO [10-20|12:56:42.532] log at level info +WARN [10-20|12:56:42.532] log at level warn +ERROR[10-20|12:56:42.532] log at level error +INFO [10-20|12:56:42.532] test bar=short a="aligned left" +INFO [10-20|12:56:42.532] test bar="a long message" a=1 +INFO [10-20|12:56:42.532] test bar=short a="aligned right" +INFO [10-20|12:56:42.532] The following logs should align so that the key-fields make 5 columns +INFO [10-20|12:56:42.532] Inserted known block number=1012 hash=000000..001234 txs=200 gas=1,123,123 other=first +INFO [10-20|12:56:42.532] Inserted new block number=1 hash=000000..001235 txs=2 gas=1123 other=second +INFO [10-20|12:56:42.532] Inserted known block number=99 hash=000000..012322 txs=10 gas=1 other=third +WARN [10-20|12:56:42.532] Inserted known block number=1012 hash=000000..001234 txs=200 gas=99 other=fourth