Priority issues between environment variable `RUST_LOG` and function call `filter_level` / `filter`.
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- rust
- Lĩnh vực
- observability-sre
Hướng nghiên cứu
Bắt đầu từ hành vi của logger builder liên quan đến filter_level(level), filter(None, level) và việc khởi tạo RUST_LOG. Xác định cách các mức ưu tiên của chúng hiện đang được áp dụng, sau đó xác định thứ tự ưu tiên cần có để RUST_LOG có thể ghi đè level được hardcode và bổ sung coverage cho cả hai dạng khởi tạo.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Environment variable RUST_LOG can only used to set "default policy", which means if filter_level(level) or filter(None, level) (they are practically equivalent) called at logger init, then environment variable RUST_LOG will cannot override the hardcoded log level.
This because environment variable RUST_LOG will initialized first (by default), then override by program logic. This might be a bug because commonly priority of environment variable > cli flag > config file or hardcoded.
Demo:
use log::{info, LevelFilter};
fn main() {
// Hardcoded log level by using `filter_level` or `filter`.
env_logger::builder().filter_level(LevelFilter::Info).init();
info!("starting up");
}
If set the environment variable RUST_LOG=warn, info output will still print:
demo on master [?] is 📦 v0.1.0 via 🦀 v1.67.0
at 14:04:38 fsh ❯ RUST_LOG=warn cargo run
Finished dev [unoptimized + debuginfo] target(s) in 0.01s
Running `target/debug/demo`
[2023-01-31T06:04:43Z INFO demo] starting up
But if not setting log level at logger init:
use log::info;
fn main() {
env_logger::builder().init();
info!("starting up");
}
Then log level can be controlled easylly from RUST_LOG:
demo on master [?] is 📦 v0.1.0 via 🦀 v1.67.0
at 14:07:17 fsh ❯ RUST_LOG=info cargo run
Finished dev [unoptimized + debuginfo] target(s) in 0.01s
Running `target/debug/demo`
[2023-01-31T06:07:21Z INFO demo] starting up
demo on master [?] is 📦 v0.1.0 via 🦀 v1.67.0
at 14:07:21 fsh ❯ RUST_LOG=warn cargo run
Finished dev [unoptimized + debuginfo] target(s) in 0.01s
Running `target/debug/demo`
- Ngôn ngữ chính
- Rust
- Star
- 1.1k
- Fork
- 150
- Merge trung bình
- 3 phút
- Pull request đã merge (30 ngày)
- 2
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của rust-cli/env_logger
-
Sanitization requires color, which parses every recordCó thể làm lại được Pull request cho issue này đã bị đóng mà không được merge. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
rust-cli/env_logger#419 · 2 bình luận ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
rust-cli/env_logger#379 · 5 bình luận ·
-
Changing the target of loggingĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
rust-cli/env_logger#369 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
rust-cli/env_logger#367 · 1 bình luận ·
-
refactor the crate to separate the provided configurable formater and the optional custom formatterĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
rust-cli/env_logger#365 · 10 bình luận ·
Tất cả issue của rust-cli/env_logger
Issue tương tự
-
[1.x Bug] run-operation --sql reports success but rolls back writes on transaction-capable adaptersĐang mởtriage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 64/100
dbt-labs/dbt#16784 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area:cli bug good first issue priority:medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
rtk-ai/rtk#4615 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bnv-manager-v2: accept_invite creates the Mailcow domain admin before the commitCó thể đã có người làm @myOmikron đã nhận hôm nay. Đang mởbug ready-for-agent
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
-
Windows: mio 1.2.3 named-pipe use-after-free panics the native IPC broker and hangs every toolĐang mởplatform:windows tool triaged wontfix
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
Maintainer thường phản hồi trong vòng 1 ngày
-
resources: add a regression test confirming admin mint still works after the #16 SAC handoffCó thể đã có người làm @Daniexie đã nhận hôm nay. Đang mởcontracts good first issue Stellar Wave
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
OlaGreat/starbound-realms#137 · 1 bình luận ·