Add new feature log_release_max_level_debug and enable it on CI release build (#390)

* Add new feature `log_release_max_level_debug`
* Fix calculation of `log_level` in `logging`
* Enable feature log_release_max_level_debug on CI release build

Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
This commit is contained in:
Jiahao XU 2022-09-17 19:22:19 +10:00 committed by GitHub
parent ee340d80b6
commit 7ac55c46f1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 3 deletions

View file

@ -4,7 +4,7 @@ if $for_release then {
# Use build-std to build a std library optimized for size and abort immediately on abort, # Use build-std to build a std library optimized for size and abort immediately on abort,
# so that format string for `unwrap`/`expect`/`unreachable`/`panic` can be optimized out. # so that format string for `unwrap`/`expect`/`unreachable`/`panic` can be optimized out.
args: ($matrix.release_build_args // "-Z build-std=std,panic_abort -Z build-std-features=panic_immediate_abort"), args: ($matrix.release_build_args // "-Z build-std=std,panic_abort -Z build-std-features=panic_immediate_abort"),
features: ($matrix.release_features // ["zlib-ng", "static", "rustls", "trust-dns", "fancy-no-backtrace"]), features: ($matrix.release_features // ["zlib-ng", "static", "rustls", "trust-dns", "fancy-no-backtrace", "log_release_max_level_debug"]),
} else { } else {
output: "debug", output: "debug",
profile: "dev", profile: "dev",

View file

@ -56,3 +56,4 @@ fancy-no-backtrace = ["miette/fancy-no-backtrace"]
fancy-with-backtrace = ["fancy-no-backtrace", "miette/fancy"] fancy-with-backtrace = ["fancy-no-backtrace", "miette/fancy"]
log_release_max_level_info = ["log/release_max_level_info"] log_release_max_level_info = ["log/release_max_level_info"]
log_release_max_level_debug = ["log/release_max_level_debug"]

View file

@ -1,9 +1,10 @@
use std::{ use std::{
cmp::min,
io::{self, BufRead, Write}, io::{self, BufRead, Write},
thread, thread,
}; };
use log::LevelFilter; use log::{LevelFilter, STATIC_MAX_LEVEL};
use simplelog::{ColorChoice, ConfigBuilder, TermLogger, TerminalMode}; use simplelog::{ColorChoice, ConfigBuilder, TermLogger, TerminalMode};
use tokio::sync::mpsc; use tokio::sync::mpsc;
@ -103,7 +104,7 @@ impl UIThread {
} }
pub fn logging(args: &Args) { pub fn logging(args: &Args) {
let log_level = args.log_level; let log_level = min(args.log_level, STATIC_MAX_LEVEL);
// Setup logging // Setup logging
let mut log_config = ConfigBuilder::new(); let mut log_config = ConfigBuilder::new();