A logging library prototype


#1

I have been working on a logging library which aims to be like Uber’s zap by avoiding allocations if possible. It’s very much a work in progress but I wanted to share what I have so far. The API is best demonstrated by the example.

Please don’t hesitate to share feedback on any aspect of the library. Whether it’s the API or perhaps I am doing something completely wrong inside the code.

I’m also curious to see comparisons to other Rust logging libraries if anyone wants to share that as well. Thanks for your time!

The logging library can be found here: https://github.com/gsquire/sequoia


#2

My first thought is “why not just use the log crate”. It sounds like the main answer is for performance in certain situations. I see you already have a few benchmarks in there. I think that including some of those results in a readme would go a long way towards helping people determine whether this is a library that they might need.


#3

It sounds like the main answer is for performance in certain situations.

That’s one of the main points, yes. I don’t intend for this to be the most “blazingly fast” logging crate but I do know that the standard log crate does makes heavy use of formatting.


#4

In addition to the standard log crate, I would also suggest comparisons with its biggest(?) competitor slog.