• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

uber-common / zap / 182
96%
master: 97%

Build:
Build:
LAST BUILD BRANCH: ajs-tests
DEFAULT BRANCH: master
Ran 17 May 2016 05:11AM UTC
Jobs 3
Files 10
Run time 56s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
182

push

travis-ci

akshayjshah
Reduce allocations for disabled/sampled logs

Even when a log level is disabled or heavily sampled, calling
`logger.Error(msg, someField, someOtherField)` will make at least one
allocation to hold the fields. If we're using the more expensive field
types, we may allocate even more, only to discard all that work.

This PR introduces the `logger.Check` API, which allows particularly
performance-sensitive applications to avoid these allocations by using
a slightly wordier call pattern.

Using `Check` makes it virtually free to pass fields to a sampled
logger:

```
BenchmarkZapDisabledLevelsAddingFields-4         3000000        439 ns/op             704 B/op          2 allocs/op
BenchmarkZapDisabledLevelsCheckAddingFields-4   200000000         5.74 ns/op            0 B/op          0 allocs/op

BenchmarkZapSampleWithoutFields-4       20000000                60.9 ns/op             0 B/op          0 allocs/op
BenchmarkZapSampleCheckWithoutFields-4  20000000                61.4 ns/op             0 B/op          0 allocs/op

BenchmarkZapSampleAddingFields-4         2000000               575 ns/op             704 B/op          2 allocs/op
BenchmarkZapSampleCheckAddingFields-4   20000000                65.2 ns/op             0 B/op          0 allocs/op
```

464 of 481 relevant lines covered (96.47%)

38905.77 hits per line

Jobs
ID Job ID Ran Files Coverage
1 182.1 17 May 2016 05:11AM UTC 0
96.47
Travis Job 182.1
2 182.2 17 May 2016 05:12AM UTC 0
96.47
Travis Job 182.2
3 182.3 17 May 2016 05:12AM UTC 0
96.47
Travis Job 182.3
Source Files on build 182
  • Tree
  • List 0
  • Changed 5
  • Source Changed 1
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Travis Build #182
  • bf690937 on github
  • Prev Build on ajs-check (#179)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc