Show HN: Echopraxia, a better Java Logging API
I've been working on logging for a while and I've released and open sourced a new Java logging API I'm really happy with.
Echopraxia [1] is a Java logging API like SLF4J, but built around structured logging, i.e. the basic log entry is a JSON object and log files are typically NDJSON. It also has conditions, context, and also has semantic and fluent logging options.
Here's a Spring Boot Example [2].
And here's my blog post [3].
[1] https://github.com/tersesystems/echopraxia
[2] https://github.com/tersesystems/echopraxia-spring-boot-example
[3] https://tersesystems.com/blog/2022/01/02/echopraxia-a-better-java-logging-api/ This looks like an interesting idea, especially on top of JUL which sucks a bit (but is a standard now). One thing I would recommend is benchmarking on the front page. This looks like something that has some overhead. e.g. the list syntax. I suggest doing several overhead benchmarks to quantify the overhead/saving with various VMs/logging configurations. Here are the benchmarks [1] using a no-op appender. There are some micro-optimizations I can make, but I think this is a pretty good start. https://github.com/tersesystems/echopraxia/blob/main/BENCHMA... I'll add that. I do have the benchmarking from Blindsight, the Scala logging API, and it's on the order of nanoseconds: https://tersesystems.github.io/blindsight/performance/benchm... Echopraxia is also a pretty interesting hard scifi book by Petter Watts - do check it out. (https://www.goodreads.com/book/show/18490708-echopraxia)