Eliza Weisman a9d4d98e39
subscriber: add function to send an event to the inner subscriber (#286)
## Motivation

In some cases, `Layer` implementations may wish to trigger new events on
the inner subscriber. Potential use cases include layers that aggregate
or roll up events. Now that PR #281 allows events to be constructed
without implicitly dispatching them to a `Subscriber`, we can add
support for this to the `Layer` trait.

## Solution

This commit adds a `Context::event` method to the `layer::Context` type
in `tracing-subscriber`. This takes an `&Event` and calls
`Subscriber::event` on the wrapped subscriber.

Signed-off-by: Eliza Weisman <eliza@buoyant.io>
2019-08-15 14:34:55 -07:00
2019-06-25 15:47:43 -07:00

tracing

Application-level tracing for Rust.

Crates.io Documentation MIT licensed Build Status Gitter chat

Website | Chat

Overview

tracing is a framework for instrumenting Rust programs to collect structured, event-based diagnostic information. tracing is maintained by the Tokio project, but does not require the tokio runtime to be used.

Getting Help

First, see if the answer to your question can be found in the API documentation. If the answer is not there, there is an active community in the Tracing Gitter channel. We would be happy to try to answer your question. Last, if that doesn't work, try opening an issue with the question.

Contributing

🎈 Thanks for your help improving the project! We are so happy to have you! We have a contributing guide to help you get involved in the Tracing project.

Project layout

The tracing crate contains the primary instrumentation API, used for instrumenting libraries and applications to emit trace data. The tracing-core crate contains the core API primitives on which the rest of tracing is instrumented. Authors of trace subscribers may depend on tracing-core, which guarantees a higher level of stability.

Additionally, this repository contains several compatibility and utility libraries built on top of tracing. Some of these crates are in a pre-release state, and are less stable than the tracing and tracing-core crates.

The crates included as part of Tracing are:

License

This project is licensed under the MIT license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Tracing by you, shall be licensed as MIT, without any additional terms or conditions.

Languages
Rust 99.8%
Shell 0.2%