How all started, I decided to make my own slf4j based logger implementation, something of a better slf4j-simple-logger cause in my opinion it lacked some key features:

  • GraalVM friendly
  • Environment logging
  • Refreshable configuration
  • Structured logging (work in progress)

This new implementation is supposed to be go-to for Serverless Java executables.

Then I decided to benchmark logger to check is there some room for performance improvement, and damn there was a lot.

I extended benchmark with different other loggers and open source it so community can see how things are going in java logging. Basically now its only sync logging benchmark without any asynchronous mechanism, but as progress on my logging implementation is continuing, I will introduce new suites, like asynchronous setups, structured logging setups and more.

Conclusion

You can check results here on GitHub and contribute or propose something.