mulog
examples
mulog | examples | |
---|---|---|
4 | 16 | |
471 | 64 | |
- | - | |
4.6 | 2.6 | |
about 1 month ago | 5 months ago | |
Clojure | Ruby | |
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.
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
examples
-
Observability at KubeCon + CloudNativeCon Europe 2024 in Paris
Honeycomb
-
Tracing: Structured Logging, but better in every way
I haven't used anything else, but I'll gladly shill for https://honeycomb.io.
-
Keeping up with my cat's 💩 using a RaspberryPi
With all of this in place I went a step further and added Opentelemetry to track the stats of how often the routine was being triggered on Honeycomb.
-
Anyone having say 1PB of MySQL data? What efficient storage solution are you using.
Events can be used in many meaningful ways. The Event subsystem of B is pretty much a co-evolution of what honeycomb.io offers, but implemented completely differently - it is on bare-metal, and hence a lot cheaper. Because of that, B never subsampled, but always kept a full low of all events anywhere, no exceptions.
-
“People used to take me seriously. Then I became a software vendor“
It should be noted that this is a very oblique ad for http://honeycomb.io. That in no way impugns the content of the post, and in fact, it's given the content of the post that I feel compelled to point out that, ultimately, this is an ad. Because what is sales and advertising, anyway? It's just a way to get you to buy a product, and you can't do that if you've never even heard about the product. I'm not currently in the market for an observability solution (something something splunk) but if I were, I've now heard of them.
The question though, is why does money ruin everything? The naive questions of an open source zealot to a proprietary software salesperson are one thing, but since we all need money to live, why does money being part of the equation (eg if someone was getting paid to post here) ruin things? Would a "donate to open source" button be more successful if the donate text is "buy me a coffee", "buy me a beer", or "upgrade my beer from Coors light"?
https://xkcd.com/2347/ was and is true, and if we don't figure out a way to change that, I don't really see a future for open source.
-
Does anyone else use scatterplots of events?
Very cool to see honeycomb.io is doing that. I'm about to embark on my distributed tracing learning journey, this makes me want to try honeycomb right away.
-
Is there a beginners guide to adding observability to your applications?
Caveat: I work for a vendor in the O11y space (https://honeycomb.io) as a Developer Advocate, however, this advice is generic, not specific to our platform.
-
KubeCon North America 2022: A Retrospective
I spent Day 2 at the Colony Club to attend OTel Unplugged. This event was sponsored by Lightstep, Honeycomb, New Relic, Splunk, Dynatrace, Crowdstrike, and NGINX. I came into the event not knowing what to expect. I can sometimes clamp up when I’m around folks that I don’t know, but because I was helping with the event check-in, I got to say hello to a number of the attendees, which helped break the ice. And it turns out that there were a lot of names that I recognized from my work in the OTel community, and it was nice to connect in person with folks whom I’d only previously met through Slack or Zoom.
- The four pillars of data observability: metrics, metadata, lineage, and logs
-
Honeycomb, Python, and I: an OpenTelemetry Horror Story (With a Happy Ending)
It's no surprise that my apps are mostly written using Sanic as I'm pretty involved with the project. I've been wanting to start testing honeycomb out as well, so it seemed the perfect opportunity to try out.
What are some alternatives?
timbre - Pure Clojure/Script logging library
metriql - The metrics layer for your data. Join us at https://metriql.com/slack
re-frame-10x - A debugging dashboard for re-frame. X-ray vision as tooling.
otel-cli - OpenTelemetry command-line tool for sending events from shell scripts & similar environments
debug-repl - A Clojure debug repl as nrepl middleware
nx-go - 🍈 Nx plugin to use Go in a Nx Workspace
clj-otel - An idiomatic Clojure API for adding telemetry to your libraries and applications using OpenTelemetry.
nxpansion
cider - The Clojure Interactive Development Environment that Rocks for Emacs
keptn - Cloud-native application life-cycle orchestration. Keptn automates your SLO-driven multi-stage delivery and operations & remediation of your applications.
spyscope - Trace-oriented debugging tools for Clojure
hyperdx - Resolve production issues, fast. An open source observability platform unifying session replays, logs, metrics, traces and errors powered by Clickhouse and OpenTelemetry.