修改启动前检查方式
This commit is contained in:
@@ -9,7 +9,6 @@ from app.core.venv_manager import check_virtualenv
|
||||
from app.core.dependency_manager import check_dependencies
|
||||
from app.utils.logger import get_logger
|
||||
from app.utils.thread_pool_manager import block_main_thread, thread_pool_manager
|
||||
from app.core.rainfall_manager import rainfall_manager
|
||||
|
||||
|
||||
class AppLauncher:
|
||||
@@ -52,11 +51,13 @@ class AppLauncher:
|
||||
|
||||
def start():
|
||||
"""启动应用服务"""
|
||||
from app.core.rainfall_manager import rainfall_manager
|
||||
|
||||
logger = get_logger()
|
||||
|
||||
|
||||
# 启动降雨站点监测
|
||||
logger.info("启动降雨站点监测服务...")
|
||||
rainfall_manager.monitoring_rainfall_station_id('2025-09-16 20:00:00')
|
||||
|
||||
|
||||
# 阻塞主线程,防止程序立即退出
|
||||
block_main_thread()
|
||||
|
||||
@@ -8,8 +8,6 @@ from typing import Optional
|
||||
|
||||
from app.utils import thread_pool_manager
|
||||
from app.utils.logger import get_logger
|
||||
from app.repositories.rainfall_repository import rainfall_repository
|
||||
from app.services.rainfall_grid_service import rainfall_grid_service
|
||||
|
||||
|
||||
class RainfallManager:
|
||||
@@ -42,12 +40,14 @@ class RainfallManager:
|
||||
def _monitoring_loop(self, initial_query_time: datetime):
|
||||
"""
|
||||
监测循环,定期检查最大ID是否改变
|
||||
|
||||
|
||||
Args:
|
||||
initial_query_time: 初始查询时间
|
||||
"""
|
||||
from app.repositories.rainfall_repository import rainfall_repository
|
||||
|
||||
query_time = initial_query_time
|
||||
|
||||
|
||||
while True:
|
||||
try:
|
||||
# 查询当前时间窗口内的最大ID
|
||||
@@ -78,14 +78,17 @@ class RainfallManager:
|
||||
def _generate_rainfall_grid_task(self, query_time: datetime, max_id: int):
|
||||
"""
|
||||
生成降雨栅格的任务函数
|
||||
|
||||
|
||||
Args:
|
||||
query_time: 查询时间
|
||||
max_id: 最大ID
|
||||
"""
|
||||
from app.repositories.rainfall_repository import rainfall_repository
|
||||
from app.services.rainfall_grid_service import rainfall_grid_service
|
||||
|
||||
try:
|
||||
self.logger.info(f"开始生成降雨栅格,查询时间: {query_time}, ID: {max_id}")
|
||||
|
||||
|
||||
# 1. 查询雨量站点数据
|
||||
station_data = rainfall_repository.get_rainfall_stations_data(query_time)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user