-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migrate from log
to tracing
#149
Comments
Absolutely. I've been independently very interested in replacing the current logging component with
My initial thought would be to expose a method on the
It might potentially be interesting to have a separate reusable component for this, but it probably doesn't belong in |
Hi! I just thought I'd swing by and mention that if you have any questions about migrating to Also, a couple things I thought I'd mention: Since you're currently using
This seems like the right approach to me. Since a couple projects have implemented this kind of endpoint, I'd like there to be a |
Yup. Components can just be lightweight wrappers for other crates which handle initialization/lifecycle management (they are in part modeled after Ruby on Rails' Railties) |
Cool, so if I'm reading all of these comments correctly it sounds like:
Does that sound right? One remaining question I have is whether the |
Ah, okay, this belies my relative lack of knowledge about Abscissa; I wasn't sure whether it was typically used as a library where the user has control over |
Yep, exactly! You can effectively just delete the current Re 2) 👍
For me, it's very important to continue to receive and emit events logged through the
Yep, exactly! |
@tarcieri receive and emit? I definitely see the usecase for receiving |
@hdevalence sorry, just "receive", i.e. messages logged by 3rd party libraries through the This looks like the relevant functionality: https://docs.rs/tracing-log/0.1.1/tracing_log/#convert-log-records-to-tracing-events |
Yep, we do exactly that in Zebra's |
Awesome! |
Starting work on this today. |
Made a draft PR with some unresolved points, linked above :) |
This was a breaking API change -- is there anything else that should be included before a new version is released? |
I'd like to do a migration from Other than that, I'd say it's ready to ship. |
Hi, in Zebra https://github.com/ZcashFoundation/zebra we used @hawkw's
tracing
rather thanlog
and wrote our ownTracingComponent
.Would Abscissa be interested in upstreaming (a modified version of) that component and replacing the default log component with a tracing-based one? In contrast to log, tracing is much more async-friendly, but can remain compatible with log-based crates.
There are some design questions, if this turns out to be of interest to Abscissa:
One of the really killer features of
tracing
is dynamic filter reloading -- how should this be exposed to Abscissa applications?In Zebra, we have an HTTP endpoint that allows feeding inputs to the filter reloading. Should Abscissa provide a default mechanism for doing filter reloading? My guess is no, that this is application-specific (e.g., we will probably fold ours into the standard RPC interface).
The text was updated successfully, but these errors were encountered: