logstash-logback-encoder
mulog
Our great sponsors
logstash-logback-encoder | mulog | |
---|---|---|
8 | 4 | |
2,386 | 469 | |
1.2% | - | |
5.2 | 4.6 | |
21 days ago | 18 days ago | |
Java | Clojure | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
logstash-logback-encoder
- Tracing: Structured Logging, but better in every way
-
Do you have a guideline on logging
I use the logstash json format.
-
How to do JSON logging in Scala?
We're using https://github.com/logfellow/logstash-logback-encoder with logback (on Play Framework, but should work fine on Lambda as well).
-
JSON logging for JSON REST services vs performance
For those interested in the details, I've created an example implementation based on Spring-flavoured REST and Logbook+logstash-logback-encoder within my own json-log-filter project for PoC / reference.
-
Echopraxia, a better Java Logging API
what's the difference to https://github.com/logfellow/logstash-logback-encoder ??
-
Is it reasonable to transform log4jlogs in via a configuration file?
Don't use filebeat. Filebeat is for systems that you cannot change logging for. Push logs directly to logstash via logstash appender. Since I'm mainly logback user, there's one directly by logstash at https://github.com/logstash/logstash-logback-encoder. Quick search indicates that there's https://github.com/viskan/logstash-appender/ for log4j also and it seems it also supports MDC abuse as indicated by https://github.com/viskan/logstash-appender/blob/master/src/main/java/com/viskan/log4j/logstash/appender/LogstashAppender.java#L256. By abusing the MDC you won't need to write a processing pattern in logstash to extract metadata from giant blob line as each key in MDC will get assigned additional value, making your records in elastic search more useful.
-
Java Spring Application logging to WS endpoint
You can use the Logstash Logback encooder. You mentioned Elk, so there must be a Logstash running somewhere you can connect to with this appender
-
Spring Cloud Sleuth in action
We need to add traceId and spanId values to the application log. In production we would use the logstash-logback-encoder to generate logs in JSON format and send them to an ELK but for the demo we use this plain text logback layout:
mulog
-
Tracing: Structured Logging, but better in every way
There are logging libraries that include syntactically scoped timers, such as mulog (https://github.com/BrunoBonacci/mulog). While a great library, we preferred timbre (https://github.com/taoensso/timbre) and rolled our own logging timer macro that interoperates with it. More convenient to have such niceties in a Lisp of course.
- A History of Clojure (2020) [pdf]
- Logging verbosely into a ring buffer?
-
Debugging in Clojure
Assuming the crash doesn't cause the process to completely exit, you could indeed use `scope-capture` for this. This works well for local dev. In theory, you could use `sc.api/spy` in production code, and then attach a remote repl to diagnose any crashes. I wouldn't recommend this though, I think it would be best to use a good logging library like Mulog: https://github.com/BrunoBonacci/mulog
What are some alternatives?
spring-cloud-sleuth-in-action - ๐ Spring Cloud Sleuth in Action
timbre - Pure Clojure/Script logging library
logback-gelf - Logback appender for sending GELF messages with zero additional dependencies.
re-frame-10x - A debugging dashboard for re-frame. X-ray vision as tooling.
zipkin - Zipkin is a distributed tracing system
debug-repl - A Clojure debug repl as nrepl middleware
logstash-appender - A log4j appender that sends raw JSON directly to Logstash
clj-otel - An idiomatic Clojure API for adding telemetry to your libraries and applications using OpenTelemetry.
logback-android - ๐The reliable, generic, fast and flexible logging framework for Android
cider - The Clojure Interactive Development Environment that Rocks for Emacs
kafkacat - Generic command line non-JVM Apache Kafka producer and consumer [Moved to: https://github.com/edenhill/kcat]
spyscope - Trace-oriented debugging tools for Clojure