fix: set root logger handler level on SIGHUP log_level reload
basicConfig creates a StreamHandler with its own level filter. Changing only the logger levels left the handler filtering at the original level, so debug messages were silently dropped after reload. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -267,9 +267,12 @@ async def serve(config: Config) -> None:
|
|||||||
config.retries = new.retries
|
config.retries = new.retries
|
||||||
if new.log_level != config.log_level:
|
if new.log_level != config.log_level:
|
||||||
config.log_level = new.log_level
|
config.log_level = new.log_level
|
||||||
logging.getLogger("s5p").setLevel(
|
level = getattr(logging, new.log_level.upper(), logging.INFO)
|
||||||
getattr(logging, new.log_level.upper(), logging.INFO),
|
root = logging.getLogger()
|
||||||
)
|
root.setLevel(level)
|
||||||
|
for h in root.handlers:
|
||||||
|
h.setLevel(level)
|
||||||
|
logging.getLogger("s5p").setLevel(level)
|
||||||
if isinstance(proxy_pool, ProxyPool) and new.proxy_pool:
|
if isinstance(proxy_pool, ProxyPool) and new.proxy_pool:
|
||||||
await proxy_pool.reload(new.proxy_pool)
|
await proxy_pool.reload(new.proxy_pool)
|
||||||
logger.info("reload: config reloaded")
|
logger.info("reload: config reloaded")
|
||||||
|
|||||||
Reference in New Issue
Block a user