paranoid_android/
layer.rs1use tracing_core::Subscriber;
2use tracing_subscriber::{
3 fmt::{
4 self,
5 format::{self, Format},
6 },
7 registry::LookupSpan,
8};
9
10use crate::{AndroidLogMakeWriter, Buffer};
11
12pub type Layer<S, N = format::DefaultFields, E = format::Full> =
14 fmt::Layer<S, N, format::Format<E, ()>, AndroidLogMakeWriter>;
15
16pub fn layer<S>(tag: impl ToString) -> Layer<S>
19where
20 S: Subscriber,
21 for<'a> S: LookupSpan<'a>,
22{
23 with_buffer(tag, Default::default())
24}
25
26pub fn with_buffer<S>(tag: impl ToString, buffer: Buffer) -> Layer<S>
29where
30 S: Subscriber,
31 for<'a> S: LookupSpan<'a>,
32{
33 fmt::Layer::new()
34 .event_format(Format::default().with_level(false).without_time())
35 .with_writer(AndroidLogMakeWriter::with_buffer(tag.to_string(), buffer))
36}