1use std::env;
2
3use spdlog::{
4 prelude::*,
5 sink::{AsyncPoolSink, FileSink},
6};
7
8fn main() -> Result<(), Box<dyn std::error::Error>> {
9 let path = env::current_exe()?.with_file_name("async.log");
10 let file_sink = FileSink::builder().path(path).build_arc()?;
11
12 let async_pool_sink = AsyncPoolSink::builder().sink(file_sink).build_arc()?;
14
15 let async_logger = Logger::builder()
16 .sink(async_pool_sink)
17 .flush_level_filter(LevelFilter::All)
18 .build_arc()?;
19
20 info!(logger: async_logger, "Hello, async!");
21
22 Ok(())
23}