from utils.logger import get_logger from database.connection import DatabaseManager from database.redis_manager import get_sync_redis_manager import psutil from datetime import datetime, timedelta import dash_bootstrap_components as dbc from dash import html logger = get_logger("default_logger") def _check_data_collection_service_running() -> bool: """Check if data collection service is running.""" try: for proc in psutil.process_iter(['pid', 'name', 'cmdline']): try: if proc.info['cmdline']: cmdline = ' '.join(proc.info['cmdline']) if 'start_data_collection.py' in cmdline or 'collection_service' in cmdline: return True except (psutil.NoSuchProcess, psutil.AccessDenied) as e: logger.warning(f"Access or process error checking service: {e}") continue return False except Exception as e: logger.error(f"Error checking data collection service running status: {e}") return False