style: 统一 Ruff 代码格式
This commit is contained in:
+24
-8
@@ -67,8 +67,12 @@ class _SensitiveDataFilter(logging.Filter):
|
||||
|
||||
@classmethod
|
||||
def redact(cls, message: str) -> str:
|
||||
message = cls._HEADER_RE.sub(lambda m: f"{m.group(1)}{m.group(2)} [REDACTED]", message)
|
||||
message = cls._KEY_VALUE_RE.sub(lambda m: f"{m.group('prefix')}[REDACTED]", message)
|
||||
message = cls._HEADER_RE.sub(
|
||||
lambda m: f"{m.group(1)}{m.group(2)} [REDACTED]", message
|
||||
)
|
||||
message = cls._KEY_VALUE_RE.sub(
|
||||
lambda m: f"{m.group('prefix')}[REDACTED]", message
|
||||
)
|
||||
message = cls._BEARER_RE.sub("Bearer [REDACTED]", message)
|
||||
return cls._JWT_RE.sub("[REDACTED_JWT]", message)
|
||||
|
||||
@@ -105,7 +109,9 @@ class _SizeAndDayRotatingFileHandler(BaseRotatingHandler):
|
||||
self._filename_prefix = re.sub(r"-\d{4}-\d{2}-\d{2}$", "", path.stem)
|
||||
|
||||
def _path_for_day(self, day) -> Path:
|
||||
return self._log_dir / f"{self._filename_prefix}-{day.isoformat()}{self._suffix}"
|
||||
return (
|
||||
self._log_dir / f"{self._filename_prefix}-{day.isoformat()}{self._suffix}"
|
||||
)
|
||||
|
||||
def shouldRollover(self, record: logging.LogRecord) -> bool: # noqa: N802
|
||||
if datetime.now().date() != self._active_day:
|
||||
@@ -133,7 +139,9 @@ class _SizeAndDayRotatingFileHandler(BaseRotatingHandler):
|
||||
archive = source.with_name(f"{source.name}.{stamp}.{os.getpid()}.gz")
|
||||
sequence = 1
|
||||
while archive.exists():
|
||||
archive = source.with_name(f"{source.name}.{stamp}.{os.getpid()}.{sequence}.gz")
|
||||
archive = source.with_name(
|
||||
f"{source.name}.{stamp}.{os.getpid()}.{sequence}.gz"
|
||||
)
|
||||
sequence += 1
|
||||
with source.open("rb") as raw, gzip.open(archive, "wb") as compressed:
|
||||
shutil.copyfileobj(raw, compressed)
|
||||
@@ -160,7 +168,9 @@ def _configure_standard_logging(level: str, log_path: Path) -> logging.Logger:
|
||||
"""将业务日志和关键框架日志收敛到单一安全轮转文件。"""
|
||||
log_level = getattr(logging, level.upper(), logging.INFO)
|
||||
framework_level = max(log_level, logging.INFO)
|
||||
formatter = logging.Formatter("%(asctime)s | %(levelname)-8s | %(name)s | %(message)s")
|
||||
formatter = logging.Formatter(
|
||||
"%(asctime)s | %(levelname)-8s | %(name)s | %(message)s"
|
||||
)
|
||||
redaction_filter = _SensitiveDataFilter()
|
||||
|
||||
console_handler = logging.StreamHandler(sys.stdout)
|
||||
@@ -168,9 +178,13 @@ def _configure_standard_logging(level: str, log_path: Path) -> logging.Logger:
|
||||
console_handler.setFormatter(formatter)
|
||||
console_handler.addFilter(redaction_filter)
|
||||
|
||||
retention_days = _parse_positive_int(os.getenv("LOG_RETENTION_DAYS"), _DEFAULT_RETENTION_DAYS)
|
||||
retention_days = _parse_positive_int(
|
||||
os.getenv("LOG_RETENTION_DAYS"), _DEFAULT_RETENTION_DAYS
|
||||
)
|
||||
rotation_size = _parse_size(os.getenv("LOG_ROTATION_SIZE"))
|
||||
file_handler = _SizeAndDayRotatingFileHandler(log_path, rotation_size, retention_days)
|
||||
file_handler = _SizeAndDayRotatingFileHandler(
|
||||
log_path, rotation_size, retention_days
|
||||
)
|
||||
file_handler.setLevel(log_level)
|
||||
file_handler.setFormatter(formatter)
|
||||
file_handler.addFilter(redaction_filter)
|
||||
@@ -199,7 +213,9 @@ def _configure_standard_logging(level: str, log_path: Path) -> logging.Logger:
|
||||
return app_logger
|
||||
|
||||
|
||||
def setup_logger(level: str = "INFO", log_dir: str | None = None, log_file: str | None = None) -> None:
|
||||
def setup_logger(
|
||||
level: str = "INFO", log_dir: str | None = None, log_file: str | None = None
|
||||
) -> None:
|
||||
"""配置控制台和文件日志。
|
||||
|
||||
``log_dir`` 默认写入 ``app-YYYY-MM-DD.log``;``log_file`` 可指定完整文件名。环境变量
|
||||
|
||||
Reference in New Issue
Block a user