Skip to content

ajvondrak/minitrace

Repository files navigation

Minitrace

Minitrace is a minimalist, vendor-agnostic distributed tracing framework. Instrument your code using structured events, then send those events to a configurable backend.

⚠️ DISCLAIMER ⚠️

For any serious project, you probably want to use OpenTelemetry or a vendor-specific library like the Honeycomb Beeline.

I'm just a guy with a particular aesthetic sense who's discontent with how bloated the status quo feels. So, in the same vein as minitest versus rspec, minitrace is a lighter-weight alternative to OTel. Unlike minitrace, OTel actually has the backing of an entire standardization community and receives constant development. I don't want to make more problems.

Indeed, this project is largely an educational exercise. At least the initial implementation should roughly follow the path laid out in some material I wrote about tracing with structured events. I intend to use this repo to show people how tracing works under the hood with as little cruft as possible. Watch this space for links as they become available.

Installation

Add this line to your application's Gemfile:

gem 'minitrace'

And then execute:

$ bundle install

Or install it yourself as:

$ gem install minitrace

Usage

TODO: Write usage instructions here

Contributing

Issues and pull requests are welcome. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.

License

The gem is available as open source under the terms of the MIT License.

Code of Conduct

Everyone interacting in the Minitrace project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.

About

A minimalist tracing framework

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages