添加 prefect UI日志显示

This commit is contained in:
2026-05-12 10:55:19 +08:00
parent 989fe75485
commit 9d85346e56
5 changed files with 128 additions and 2 deletions
+12
View File
@@ -50,11 +50,13 @@ def run_channel_inventory_sync_task() -> None:
logger.info("渠道库存统计开始,action=all,安全日志模式=enabled")
original_argv = sys.argv[:]
original_safe_logs = os.environ.get("INVENTORY_SAFE_LOGS")
original_prefect_log_bridge = os.environ.get("INVENTORY_PREFECT_LOG_BRIDGE")
root_logger = logging.getLogger()
original_handlers = root_logger.handlers[:]
original_level = root_logger.level
try:
os.environ["INVENTORY_SAFE_LOGS"] = "1"
os.environ["INVENTORY_PREFECT_LOG_BRIDGE"] = "1"
sys.argv = ["sync_channel_inventory.py", "--action", "all"]
exit_code = channel_inventory_sync_main()
except Exception as exc: # noqa: BLE001
@@ -66,6 +68,10 @@ def run_channel_inventory_sync_task() -> None:
os.environ.pop("INVENTORY_SAFE_LOGS", None)
else:
os.environ["INVENTORY_SAFE_LOGS"] = original_safe_logs
if original_prefect_log_bridge is None:
os.environ.pop("INVENTORY_PREFECT_LOG_BRIDGE", None)
else:
os.environ["INVENTORY_PREFECT_LOG_BRIDGE"] = original_prefect_log_bridge
root_logger.handlers = original_handlers
root_logger.setLevel(original_level)
if exit_code != 0:
@@ -91,11 +97,13 @@ def run_batch_inventory_report_task(
)
original_argv = sys.argv[:]
original_safe_logs = os.environ.get("INVENTORY_SAFE_LOGS")
original_prefect_log_bridge = os.environ.get("INVENTORY_PREFECT_LOG_BRIDGE")
root_logger = logging.getLogger()
original_handlers = root_logger.handlers[:]
original_level = root_logger.level
try:
os.environ["INVENTORY_SAFE_LOGS"] = "1"
os.environ["INVENTORY_PREFECT_LOG_BRIDGE"] = "1"
sys.argv = ["generate_batch_inventory_report.py"]
if output:
sys.argv.extend(["--output", output])
@@ -116,6 +124,10 @@ def run_batch_inventory_report_task(
os.environ.pop("INVENTORY_SAFE_LOGS", None)
else:
os.environ["INVENTORY_SAFE_LOGS"] = original_safe_logs
if original_prefect_log_bridge is None:
os.environ.pop("INVENTORY_PREFECT_LOG_BRIDGE", None)
else:
os.environ["INVENTORY_PREFECT_LOG_BRIDGE"] = original_prefect_log_bridge
root_logger.handlers = original_handlers
root_logger.setLevel(original_level)
if exit_code != 0: