When to use this skill
ALWAYS use this skill when the user mentions:
- Unified logging for Tauri apps (dev and release)
- Log level configuration, filtering, or file output
- Safe diagnostics without leaking sensitive data
Trigger phrases include:
- "logging", "log levels", "log plugin", "diagnostics", "log file", "debug logs"
How to use this skill
- Install the logging plugin:
cargo add tauri-plugin-log - Register the plugin with level and target configuration:
use tauri_plugin_log::{Target, TargetKind}; tauri::Builder::default() .plugin(tauri_plugin_log::Builder::new() .targets([Target::new(TargetKind::Stdout), Target::new(TargetKind::LogDir { file_name: None })]) .level(log::LevelFilter::Info) .build()) - Configure capabilities in
src-tauri/capabilities/default.json:{ "permissions": ["log:default"] } - Log from the frontend:
import { info, warn, error } from '@tauri-apps/plugin-log'; await info('App started'); await error('Something went wrong'); - Use different log levels for dev (Debug/Trace) vs release (Info/Warn) builds
- Redact sensitive data before logging (never log tokens, passwords, or PII)
Outputs
- Logging plugin setup with file and stdout targets
- Level-based filtering for dev vs release
- Redaction rules for sensitive data
References
- https://v2.tauri.app/plugin/logging/
Keywords
tauri logging, log levels, log plugin, diagnostics, log file, redaction