Files
video-gen/video-gen-api/app/services/bank/file_logger.py
T
root 7dcedf974d 1、后台菜单增加定时任务和银行交易
2、增加后台配置银行账户和请求网址
2026-08-13 15:12:16 +08:00

51 lines
1.4 KiB
Python

"""银行接口请求文件日志记录器。
使用 get_logger 模式,日志输出到 log/bank_api/bank_api-YYYY-MM-DD.log。
"""
import json
from datetime import datetime, timezone
from app.utils.logger import get_logger
bank_api_logger = get_logger("bank_api", "bank_api")
def log_bank_api_request(
acct_no: str,
request_params: dict | None,
response_data: dict | None,
status_code: int | None,
is_success: bool,
error_msg: str | None = None,
admin_id: str | None = None,
duration_ms: int | None = None,
) -> None:
"""记录银行接口请求到日志文件。
:param acct_no: 查询的银行账号
:param request_params: 请求参数
:param response_data: 响应数据
:param status_code: HTTP 状态码
:param is_success: 是否成功
:param error_msg: 错误信息
:param admin_id: 操作管理员 ID
:param duration_ms: 请求耗时(毫秒)
"""
log_data = {
"timestamp": datetime.now(timezone.utc).isoformat(),
"acct_no": acct_no,
"request_params": request_params,
"response_data": response_data,
"status_code": status_code,
"is_success": is_success,
"error_msg": error_msg,
"admin_id": admin_id,
"duration_ms": duration_ms,
}
line = json.dumps(log_data, ensure_ascii=False, default=str)
if is_success:
bank_api_logger.info(line)
else:
bank_api_logger.error(line)