🔊 Trace events from Matrix client callbacks to domain methods

This commit is contained in:
2024-05-21 12:22:04 +02:00
parent b5da0ee992
commit cd6506fb03
11 changed files with 405 additions and 163 deletions

View File

@@ -10,7 +10,10 @@ mod utils;
use dioxus::prelude::*;
use tracing::{debug, error};
use tracing_forest::ForestLayer;
use tracing_subscriber::prelude::*;
use tracing_subscriber::EnvFilter;
cfg_if! {
if #[cfg(feature = "desktop")] {
@@ -111,36 +114,34 @@ fn main() {
let mut layers = Vec::new();
cfg_if! {
if #[cfg(feature = "desktop")] {
let config = Config::new().with_menu(None);;
builder = builder.with_cfg(config);
let log_file = File::create("/tmp/bg92.log").unwrap();
let file_layer = tracing_subscriber::fmt::layer()
.with_writer(log_file)
.with_timer(UtcTime::new(Iso8601::DATE_TIME))
.with_ansi(false)
.with_filter(tracing::level_filters::LevelFilter::WARN)
.boxed();
layers.push(file_layer);
let console_layer = tracing_subscriber::fmt::layer()
// .with_filter(tracing::level_filters::LevelFilter::DEBUG);
.with_filter(tracing::level_filters::LevelFilter::WARN)
.boxed();
layers.push(console_layer);
} else if #[cfg(feature = "web")] {
if #[cfg(target_family = "wasm")] {
let console_layer = tracing_subscriber::fmt::layer()
.with_ansi(false) // Only partially supported across browsers
.without_time() // std::time is not available in browsers, see note below
.with_writer(MakeWebConsoleWriter::new()) // write events to the console
.with_filter(tracing::level_filters::LevelFilter::INFO);
.boxed();
layers.push(console_layer);
} else {
let config = Config::new().with_menu(None);
builder = builder.with_cfg(config);
let log_file = File::create("/tmp/bg92.log").unwrap();
let file_layer = tracing_subscriber::fmt::layer()
.with_ansi(false)
.with_writer(log_file)
.with_timer(UtcTime::new(Iso8601::DATE_TIME))
.boxed();
layers.push(file_layer);
let console_layer = ForestLayer::default().boxed();
layers.push(console_layer);
}
}
tracing_subscriber::registry().with(layers).init();
tracing_subscriber::registry()
.with(layers)
.with(EnvFilter::from_default_env())
.init();
builder.launch(app);
}