1
0
mirror of https://github.com/fluencelabs/tendermint synced 2025-06-25 18:51:39 +00:00
Files
.circleci
.github
DOCKER
abci
benchmarks
blockchain
cmd
config
consensus
crypto
docs
evidence
libs
autofile
bech32
cli
clist
common
db
errors
events
flowrate
log
filter.go
filter_test.go
logger.go
nop_logger.go
testing_logger.go
tm_json_logger.go
tm_logger.go
tm_logger_test.go
tmfmt_logger.go
tmfmt_logger_test.go
tracing_logger.go
tracing_logger_test.go
pubsub
test
version
.editorconfig
.gitignore
CHANGELOG.md
README.md
circle.yml
test.sh
lite
mempool
networks
node
p2p
privval
proxy
rpc
scripts
state
test
tools
types
version
.editorconfig
.gitignore
CHANGELOG.md
CHANGELOG_PENDING.md
CODE_OF_CONDUCT.md
CONTRIBUTING.md
Gopkg.lock
Gopkg.toml
LICENSE
Makefile
README.md
ROADMAP.md
SECURITY.md
UPGRADING.md
Vagrantfile
appveyor.yml
codecov.yml
docker-compose.yml
tendermint/libs/log/tm_logger_test.go

45 lines
1.1 KiB
Go
Raw Normal View History

package log_test
import (
2017-11-06 14:18:42 -05:00
"bytes"
"io/ioutil"
2017-11-06 14:18:42 -05:00
"strings"
"testing"
2017-11-06 14:18:42 -05:00
"github.com/go-logfmt/logfmt"
2018-07-01 22:36:49 -04:00
"github.com/tendermint/tendermint/libs/log"
)
2017-11-06 14:18:42 -05:00
func TestLoggerLogsItsErrors(t *testing.T) {
var buf bytes.Buffer
logger := log.NewTMLogger(&buf)
logger.Info("foo", "baz baz", "bar")
msg := strings.TrimSpace(buf.String())
if !strings.Contains(msg, logfmt.ErrInvalidKey.Error()) {
t.Errorf("Expected logger msg to contain ErrInvalidKey, got %s", msg)
}
}
2017-05-02 14:26:00 -04:00
func BenchmarkTMLoggerSimple(b *testing.B) {
benchmarkRunner(b, log.NewTMLogger(ioutil.Discard), baseInfoMessage)
}
2017-05-02 14:26:00 -04:00
func BenchmarkTMLoggerContextual(b *testing.B) {
benchmarkRunner(b, log.NewTMLogger(ioutil.Discard), withInfoMessage)
}
func benchmarkRunner(b *testing.B, logger log.Logger, f func(log.Logger)) {
2017-05-04 19:39:16 +04:00
lc := logger.With("common_key", "common_value")
b.ReportAllocs()
b.ResetTimer()
for i := 0; i < b.N; i++ {
f(lc)
}
}
var (
baseInfoMessage = func(logger log.Logger) { logger.Info("foo_message", "foo_key", "foo_value") }
2017-05-04 19:39:16 +04:00
withInfoMessage = func(logger log.Logger) { logger.With("a", "b").Info("c", "d", "f") }
)