➕ Reuse tracing library to be able to display matrix SDK logs
This commit is contained in:
21
src/main.rs
21
src/main.rs
@@ -8,11 +8,16 @@ use std::time::Duration;
|
||||
|
||||
use async_std::task;
|
||||
use dioxus::prelude::*;
|
||||
use log::{debug, LevelFilter};
|
||||
|
||||
#[cfg(feature = "desktop")]
|
||||
use dioxus::desktop::Config;
|
||||
|
||||
use tracing::debug;
|
||||
use tracing_subscriber::prelude::*;
|
||||
|
||||
#[cfg(feature = "web")]
|
||||
use tracing_web::MakeWebConsoleWriter;
|
||||
|
||||
use crate::base::{login, sync_rooms};
|
||||
use crate::base::{APP_SETTINGS, ROOMS, SESSION};
|
||||
use crate::ui::components::loading::LoadingPage;
|
||||
@@ -113,16 +118,26 @@ fn app() -> Element {
|
||||
}
|
||||
|
||||
fn main() {
|
||||
dioxus_logger::init(LevelFilter::Info).expect("failed to init logger");
|
||||
|
||||
#[cfg(feature = "desktop")]
|
||||
{
|
||||
let fmt_layer = tracing_subscriber::fmt::layer()
|
||||
.with_filter(tracing::level_filters::LevelFilter::DEBUG);
|
||||
tracing_subscriber::registry().with(fmt_layer).init();
|
||||
|
||||
let config = Config::new().with_menu(None);
|
||||
let builder = LaunchBuilder::new().with_cfg(config);
|
||||
builder.launch(app);
|
||||
}
|
||||
|
||||
#[cfg(feature = "web")]
|
||||
{
|
||||
let fmt_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);
|
||||
tracing_subscriber::registry().with(fmt_layer).init(); // Install these as subscribers to tracing events
|
||||
|
||||
let builder = LaunchBuilder::new();
|
||||
builder.launch(app);
|
||||
}
|
||||
|
Reference in New Issue
Block a user