| | |
| | | try: |
| | | current_time = datetime.now() |
| | | current_hour = current_time.hour |
| | | |
| | | if stop_start_hour <= current_hour < stop_end_hour: |
| | | logging.info("Within 00:00 - 05:00, stopping all monitored processes.") |
| | | for process in process_list: |
| | | process_name = process.get("process_name") |
| | | if not process_name or process_name=="Gate": |
| | | continue |
| | | for process in process_list: |
| | | process_name = process.get("process_name") |
| | | if stop_start_hour <= current_hour < stop_end_hour and process_name!="Gate": |
| | | pids = get_process_pids(process_name) |
| | | if pids: |
| | | stop_process(pids) |
| | | else: |
| | | for process in process_list: |
| | | process_name = process.get("process_name") |
| | | if not process_name: |
| | | continue |
| | | stop_process(pids) |
| | | else: |
| | | pids = get_process_pids(process_name) |
| | | if not pids: |
| | | logging.warning(f"Process {process_name} is not running, starting...") |
| | | start_process(process) |
| | | except Exception as e: |
| | | logging.error(f"Monitoring processes encountered an exception: {e}") |
| | | |
| | | |
| | | time.sleep(interval_seconds) # 按配置时间间隔检查 |
| | | |
| | | |