Priority issues between environment variable `RUST_LOG` and function call `filter_level` / `filter`.
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- rust
- Área
- observability-sre
Línea de trabajo
Comienza por el comportamiento del constructor del logger en torno a filter_level(level), filter(None, level) y la inicialización de RUST_LOG. Determina cómo se aplican actualmente sus prioridades y, a continuación, define la precedencia esperada para que RUST_LOG pueda sobrescribir el nivel codificado de forma fija, y añade cobertura para ambas formas de inicialización.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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`
- Lenguaje dominante
- Rust
- Estrellas
- 1.1k
- Forks
- 150
- Merge medio
- 3 min
- PR fusionados (30 d)
- 2
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de rust-cli/env_logger
-
Sanitization requires color, which parses every recordQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
rust-cli/env_logger#419 · 2 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
rust-cli/env_logger#379 · 5 comentarios ·
-
Changing the target of loggingAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
rust-cli/env_logger#369 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
rust-cli/env_logger#367 · 1 comentario ·
-
refactor the crate to separate the provided configurable formater and the optional custom formatterAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
rust-cli/env_logger#365 · 10 comentarios ·
Todos los issues de rust-cli/env_logger
Issues similares
-
Progress difficulty filter lists Hard before MediumPosiblemente ocupada @Pandamachi la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
sysprog21/codetrial#281 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
C-bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
rust-lang/rust-analyzer#23501 ·
Los mantenedores suelen responder en 1 día
-
Streamable HTTP client: a 401 or 403 with a JSON-RPC error body and no WWW-Authenticate loses its HTTP statusPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertobug P2 ready for work T-security T-transport
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
modelcontextprotocol/rust-sdk#1339 ·
Los mantenedores suelen responder en 3 días
-
scripts/gen-gallery.py:118: a ready session now reports in_progress, so SESSION_READY_OLD can goAbiertonightly-audit
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
antithesishq/snouty#396 ·
Los mantenedores suelen responder en 1 día
-
French BIP39 wordlist starts with a UTF-8 BOM, so generated French mnemonics carry U+FEFF and derive a non-canonical seedPosiblemente ocupada @Kshot3000 la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 91/100
ergoplatform/sigma-rust#976 ·
Los mantenedores suelen responder en 1 día