Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[bug] Exclude app_icon (Vec<u8>) from tracing instrumentation (wry::ipc::handle) #10776

Open
mihirsamdarshi opened this issue Aug 25, 2024 · 0 comments
Labels
status: needs triage This issue needs to triage, applied to new issues type: bug

Comments

@mihirsamdarshi
Copy link

mihirsamdarshi commented Aug 25, 2024

Describe the bug

I am trying to debug an application that I have written with Tauri. I enabled the tracing feature. When the app tries to handle a tauri::command my application freezes because it is trying to log the entire app icon as a Vec<u8>.

The log looks like the following:

2024-08-25T20:22:57.189423Z DEBUG wry::ipc::handle:window::on_message{self=Window { window: DetachedWindow { label: "main", dispatcher: WryDispatcher { window_id: 7354931179636518423, context: Context { main_thread_id: ThreadId(1), proxy: EventLoopProxy { <other stuff here> }, TauriConfig{ <other stuff here...>, app_icon: Some([105, 99, 110, 115, 0, 7, 53, 156, 105, 99, 49, 50, 0, 0, 18, 110, 137, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72, 68, 82, 0, 0, 0, 64, 0, 0, 0, 64, 8, 6, 0, 0, 0, 170, 105, 113, 222, 0, 0, 18, 45, 73, 68, 65, 84, 120, 156, 229, 91, 105, 116, 28, 213, 149, 190, 146, 122, 239, 214, 210, 146, 90, 82, 183, 118, 75, 224, 93, 216... 

Reproduction

Create a tauri application, add an app icon, then, enable tracing in your Cargo.toml,

In Cargo.toml:

[features]
tauri-tracing = ["tauri/tracing"]

Set up tracing in your application

fn setup_tracing() {
    let filter: Directive = LevelFilter::DEBUG.into();

    let env_filter = EnvFilter::builder()
        .with_default_directive(filter)
        .from_env_lossy()
        .add_directive("h2=warn".parse().unwrap())
        .add_directive("rustls=warn".parse().unwrap())
        .add_directive("yup_oauth2::authenticator=warn".parse().unwrap())
        .add_directive("hyper=warn".parse().unwrap());

    let subscriber = tracing_subscriber::registry()
        .with(tracing_subscriber::fmt::layer().with_filter(env_filter));

    #[cfg(all(debug_assertions, not(windows)))]
    // set up tokio-console if we're running in debug mode
    let subscriber = subscriber.with(console_subscriber::spawn());

    subscriber.init();
}

fn main() {
    let _sentry_guard = setup_tracing();

    let state = InfraState::new();

    tauri::Builder::default()
        .manage(state)
        .on_page_load(page_load_handler)
        .invoke_handler(tauri::generate_handler![
             a_command
        ])
        .run(tauri::generate_context!())
        .expect("error while running tauri application");
}

Then run the application:

RUST_DEBUG=1 NODE_TLS_REJECT_UNAUTHORIZED=0 RUST_BACKTRACE=full NO_COLOR=true yarn tauri dev -v --features tauri-tracing > app.log 2>&1

Expected behavior

The app_icon isn't necessary (in my opinion), and just clogs the logs. I'm hoping you can exclude it?

Full tauri info output

❯ yarn tauri info
yarn run v1.22.19
$ tauri info

[✔] Environment
    - OS: Mac OS 14.6.1 X64
    ✔ Xcode Command Line Tools: installed
    ✔ rustc: 1.82.0-nightly (2c93fabd9 2024-08-15)
    ✔ cargo: 1.82.0-nightly (2f738d617 2024-08-13)
    ✔ rustup: 1.27.1 (54dd3d00f 2024-04-24)
    ✔ Rust toolchain: nightly-aarch64-apple-darwin (overridden by '/Users/msamdars/Code/omicspipelines-infrastructure/rust-toolchain.toml')
    - node: 20.11.0
    - pnpm: 9.7.1
    - yarn: 1.22.19
    - npm: 10.2.4
    - bun: 1.1.25

[-] Packages
    - tauri [RUST]: 1.7.2
    - tauri-build [RUST]: 1.5.4
    - wry [RUST]: 0.24.10
    - tao [RUST]: 0.16.9
    - @tauri-apps/api [NPM]: 1.6.0
    - @tauri-apps/cli [NPM]: 1.6.1

[-] App
    - build-type: bundle
    - CSP: unset
    - distDir: ../build
    - devPath: http://localhost:9090/
    - framework: React
    - bundler: Rollup
✨  Done in 2.69s.
@mihirsamdarshi mihirsamdarshi added status: needs triage This issue needs to triage, applied to new issues type: bug labels Aug 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status: needs triage This issue needs to triage, applied to new issues type: bug
Projects
None yet
Development

No branches or pull requests

1 participant