pub struct StructuredLogWriter { /* private fields */ }Expand description
结构化日志器:支持结构化字段、target 过滤与多 sink 输出。
结合 LevelFilter 与 LogSink,提供生产级日志能力:
- 按 target 过滤日志级别
- 记录结构化字段
- 扇出到多个输出后端
Implementations§
Source§impl StructuredLogWriter
impl StructuredLogWriter
Sourcepub fn new(filter: LevelFilter) -> Self
pub fn new(filter: LevelFilter) -> Self
创建结构化日志写入器
Sourcepub fn add_sink(&mut self, sink: Arc<dyn StructuredSink>) -> &mut Self
pub fn add_sink(&mut self, sink: Arc<dyn StructuredSink>) -> &mut Self
添加结构化 sink
Sourcepub fn sink_count(&self) -> usize
pub fn sink_count(&self) -> usize
获取 sink 数量
Sourcepub fn sink_names(&self) -> Vec<String>
pub fn sink_names(&self) -> Vec<String>
获取 sink 名称列表
Sourcepub fn filter(&self) -> &LevelFilter
pub fn filter(&self) -> &LevelFilter
获取级别过滤器引用
Sourcepub fn filter_mut(&mut self) -> &mut LevelFilter
pub fn filter_mut(&mut self) -> &mut LevelFilter
获取级别过滤器可变引用
Sourcepub fn log(&self, entry: &StructuredLogEntry)
pub fn log(&self, entry: &StructuredLogEntry)
记录一条结构化日志。
根据 target 通过 LevelFilter 过滤后扇出到所有 sink。
target 为 None 时使用默认级别。
Sourcepub fn log_with_fields(
&self,
target: impl Into<String>,
level: LogLevel,
message: impl Into<String>,
fields: StructuredFields,
)
pub fn log_with_fields( &self, target: impl Into<String>, level: LogLevel, message: impl Into<String>, fields: StructuredFields, )
便捷方法:记录一条带 target 和字段的日志
Auto Trait Implementations§
impl !RefUnwindSafe for StructuredLogWriter
impl !UnwindSafe for StructuredLogWriter
impl Freeze for StructuredLogWriter
impl Send for StructuredLogWriter
impl Sync for StructuredLogWriter
impl Unpin for StructuredLogWriter
impl UnsafeUnpin for StructuredLogWriter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more