2026-06-10 21:28:03,598 [app] INFO: ==================================================
2026-06-10 21:28:03,598 [app] INFO: 应用启动中...
2026-06-10 21:28:03,598 [app] INFO: Python: 3.12.4 (main, Jul 22 2024, 12:12:54) [GCC 12.2.0]
2026-06-10 21:28:03,598 [app] INFO: TRIM_PKGVAR: /vol1/@appdata/x1_x1s_ledfancontrol
2026-06-10 21:28:03,598 [app] INFO: TRIM_APPDEST: /vol1/@appcenter/x1_x1s_ledfancontrol
2026-06-10 21:28:03,598 [app] INFO: LED_GATEWAY_PREFIX: /app/x1_x1s_ledfancontrol
2026-06-10 21:28:03,598 [app] INFO: LED_GATEWAY_SOCKET: /vol1/@appcenter/x1_x1s_ledfancontrol/app.sock
2026-06-10 21:28:03,598 [app] INFO: 设备型号: x1 (wizard_device_model=x1)
2026-06-10 21:28:03,599 [app] INFO: wizard_default_mode: auto
2026-06-10 21:28:03,599 [app] INFO: 网关前缀中间件已启用: /app/x1_x1s_ledfancontrol
2026-06-10 21:28:03,633 [disk_monitor] INFO: 槽位 1: ata端口=ata3, port_no=1, PCI=/sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0, 路径=/sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0/ata3/host2/target2:0:0/2:0:0:0
2026-06-10 21:28:03,633 [disk_monitor] INFO: 槽位 2: ata端口=ata4, port_no=2, PCI=/sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0, 路径=/sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0/ata4/host3/target3:0:0/3:0:0:0
2026-06-10 21:28:03,634 [disk_monitor] INFO: 槽位 3: ata端口=ata5, port_no=3, PCI=/sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0, 路径=/sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0/ata5/host4/target4:0:0/4:0:0:0
2026-06-10 21:28:03,634 [disk_monitor] INFO: 槽位 4: ata端口=ata6, port_no=4, PCI=/sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0, 路径=/sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0/ata6/host5/target5:0:0/5:0:0:0
2026-06-10 21:28:03,634 [disk_monitor] WARNING: 槽位 5: ata端口=ata2, port_no=2, 未找到 target 路径
2026-06-10 21:28:03,634 [disk_monitor] INFO: 硬盘路径检测结果: 共 4 个槽位
2026-06-10 21:28:03,634 [disk_monitor] INFO: 槽位 1 → /sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0/ata3/host2/target2:0:0/2:0:0:0
2026-06-10 21:28:03,634 [disk_monitor] INFO: 槽位 2 → /sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0/ata4/host3/target3:0:0/3:0:0:0
2026-06-10 21:28:03,634 [disk_monitor] INFO: 槽位 3 → /sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0/ata5/host4/target4:0:0/4:0:0:0
2026-06-10 21:28:03,634 [disk_monitor] INFO: 槽位 4 → /sys/devices/pci0000:00/0000:00:13.0/0000:01:00.0/ata6/host5/target5:0:0/5:0:0:0
2026-06-10 21:28:03,638 [gpio] INFO: GPIO 控制器: libgpiod v2 (chip=/dev/gpiochip0, model=x1, power_pin=20)
2026-06-10 21:28:03,638 [net_monitor] INFO: 网卡监控器初始化: enp2s0
2026-06-10 21:28:03,639 [net_monitor] INFO: 网卡监控器初始化: enp3s0
2026-06-10 21:28:03,639 [net_monitor] INFO: 网卡监控器初始化: enx00e04c680281
2026-06-10 21:28:03,639 [net_monitor] INFO: 网络监控器初始化完成,网口: ['enp2s0', 'enp3s0', 'enx00e04c680281']
2026-06-10 21:28:03,640 [fan_controller] INFO: 从 /vol1/@appdata/x1_x1s_ledfancontrol/fan_state.json 加载风扇状态成功
2026-06-10 21:28:03,641 [fan_controller] INFO: 风扇1: 已接管 PWM 控制权 (pwm_enable=1)
2026-06-10 21:28:03,641 [fan_controller] INFO: 风扇2: 已接管 PWM 控制权 (pwm_enable=1)
2026-06-10 21:28:03,642 [led_manager] INFO: LEDManager 创建完成, 默认模式=auto, 状态文件=/vol1/@appdata/x1_x1s_ledfancontrol/led_state.json
2026-06-10 21:28:03,642 [app] INFO: LEDManager 初始化成功 (model=x1)
2026-06-10 21:28:03,642 [led_manager] INFO: 开始初始化...
2026-06-10 21:28:03,642 [led_manager] INFO: 从 /vol1/@appdata/x1_x1s_ledfancontrol/led_state.json 加载状态成功
2026-06-10 21:28:03,642 [led_manager] INFO: 状态加载完成, 模式=auto, LED电源=True
2026-06-10 21:28:03,642 [gpio] INFO: 开始初始化所有 LED (model=x1)...
2026-06-10 21:28:03,642 [gpio] INFO: 打开 /dev/gpiochip0 成功 (name=gpiochip0, label=INT3453:00, num_lines=80)
2026-06-10 21:28:03,644 [gpio] INFO: 成功申请 12 条 GPIO 线路 (model=x1)
2026-06-10 21:28:03,644 [gpio] INFO: 初始化完成, 成功 12/12
2026-06-10 21:28:03,644 [led_manager] INFO: GPIO 初始化结果: {'disk1_white': True, 'disk2_white': True, 'disk3_white': True, 'disk4_white': True, 'disk5_white': True, 'disk1_yellow': True, 'disk2_yellow': True, 'disk3_yellow': True, 'disk4_yellow': True, 'disk5_yellow': True, 'net_white': True, 'net_blue': True}
2026-06-10 21:28:03,644 [led_manager] INFO: LED软件状态已重置,与GPIO硬件初始状态对齐
2026-06-10 21:28:03,644 [gpio] INFO: LED电源GPIO初始化成功 (pin=20, model=x1, 默认打开)
2026-06-10 21:28:03,644 [gpio] INFO: LED电源: 打开 (pin=20, model=x1)
2026-06-10 21:28:03,644 [led_manager] INFO: LED电源初始化: 打开
2026-06-10 21:28:03,645 [led_manager] INFO: STATUS GPIO: /dev/gpiochip4 (name=gpiochip4, num_lines=64)
2026-06-10 21:28:03,645 [led_manager] INFO: STATUS 灯已点亮 (/dev/gpiochip4 pin 0=1)
2026-06-10 21:28:03,645 [led_manager] INFO: 启动 LED 自动模式...
2026-06-10 21:28:03,645 [led_manager] INFO: LED 自动线程已启动
2026-06-10 21:28:03,645 [led_manager] INFO: 启动风扇自动模式...
2026-06-10 21:28:03,646 [fan_controller] INFO: 风扇自动控制已启动
2026-06-10 21:28:03,646 [led_manager] INFO: 初始化完成
2026-06-10 21:28:03,646 [app] INFO: 所有 LED 初始化成功
2026-06-10 21:28:03,646 [app] INFO: 设备型号 X1,跳过 OLED 初始化
2026-06-10 21:28:03,646 [app] INFO: Unix Socket 服务: /vol1/@appcenter/x1_x1s_ledfancontrol/app.sock
2026-06-10 21:28:03,646 [app] INFO: 所有服务已启动
2026-06-10 21:28:03,647 [led_manager] INFO: LED 自动循环开始 (间隔 1.5s)
2026-06-10 21:28:03,655 [hw_monitor] INFO: 找到 hwmon: hwmon1 (driver=coretemp)
[2026-06-10 21:28:03] [main] Flask 应用启动成功!Unix Socket 已创建 (耗时 1 秒)
[2026-06-10 21:28:03] [main] ========== 应用启动完成 ==========
2026-06-10 21:28:04,256 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=39.0°C, PWM 100->70 (目标50)
2026-06-10 21:28:04,257 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=39.0°C, PWM 100->70 (目标50)
2026-06-10 21:28:09,764 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=39.0°C, PWM 70->50 (目标50)
2026-06-10 21:28:09,764 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=39.0°C, PWM 70->50 (目标50)
2026-06-10 21:31:30,700 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/device
2026-06-10 21:31:30,702 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:32,707 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:34,705 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:36,707 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:38,707 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:40,705 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:42,705 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:44,706 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:46,708 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:48,705 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:50,803 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:52,807 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:54,707 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:57,548 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/device
2026-06-10 21:31:57,550 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:31:59,553 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:01,557 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:03,553 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:05,549 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:07,553 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:09,559 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:11,553 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:13,555 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:15,555 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:17,550 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:19,555 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:21,551 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:23,551 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:25,556 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:27,551 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:29,555 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:31,556 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:33,555 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:35,806 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:37,806 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:39,559 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:41,555 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:43,556 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:45,551 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:47,556 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:49,551 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:51,552 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:53,803 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:55,808 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:57,806 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:32:59,806 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:01,810 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:03,806 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:05,802 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:07,803 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:09,805 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:11,806 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:13,804 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:15,805 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:17,807 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:19,807 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:21,808 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:23,807 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:25,808 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:27,806 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:29,808 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:31,808 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:33,808 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:35,805 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:37,807 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:39,807 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:41,809 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:43,809 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:45,806 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:47,809 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:49,811 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:33:51,807 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:17,805 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:46,001 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:47,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:49,559 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:51,668 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:53,555 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:55,554 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:57,559 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:34:59,557 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:01,555 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:03,557 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:05,559 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:07,556 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:09,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:11,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:13,556 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:15,557 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:17,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:19,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:21,557 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:23,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:25,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:27,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:29,556 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:31,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:33,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:35,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:37,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:39,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:41,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:43,557 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:45,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:47,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:49,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:51,557 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:53,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:55,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:57,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:35:59,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:01,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:03,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:05,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:07,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:09,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:11,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:13,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:15,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:17,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:19,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:21,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:23,559 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:25,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:27,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:29,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:31,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:33,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:35,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:37,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:39,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:41,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:43,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:45,559 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:47,559 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:49,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:51,558 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:53,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:55,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:57,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:36:59,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:01,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:03,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:05,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:07,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:09,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:11,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:13,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:15,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:17,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:19,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:21,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:23,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:25,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:27,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:29,560 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:31,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:33,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:35,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:37,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:39,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:41,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:43,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:45,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:47,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:49,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:51,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:53,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:55,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:57,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:37:59,566 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:01,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:03,566 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:05,566 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:07,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:09,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:11,562 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:13,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:15,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:17,566 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:19,565 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:21,567 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:23,566 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:25,561 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:27,566 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:29,566 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:31,563 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:33,564 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:35,567 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:37,566 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:39,567 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:41,814 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:43,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:45,814 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:47,814 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:49,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:51,815 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:53,814 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:55,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:57,815 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:38:59,818 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:01,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:03,818 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:05,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:07,818 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:09,817 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:11,820 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:13,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:15,818 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:17,820 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:19,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:21,817 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:23,818 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:25,818 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:27,820 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:29,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:31,820 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:33,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:35,819 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:37,817 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:39:39,818 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:40:17,821 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:41:17,822 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:41:26,255 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 21:41:27,570 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-10 22:30:33,824 [net_monitor] DEBUG: socket 连接 baidu.com:80 失败: [Errno -3] Temporary failure in name resolution
2026-06-10 22:30:48,840 [net_monitor] DEBUG: socket 连接 qq.com:80 失败: [Errno -3] Temporary failure in name resolution
2026-06-10 22:45:21,435 [net_monitor] DEBUG: socket 连接 baidu.com:80 失败: [Errno -3] Temporary failure in name resolution
2026-06-10 23:46:17,373 [fan_controller] INFO: 风扇1: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-10 23:46:17,374 [fan_controller] INFO: 风扇2: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-10 23:59:01,430 [fan_controller] INFO: 风扇1: CPU=50.7°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-10 23:59:01,431 [fan_controller] INFO: 风扇2: CPU=50.7°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-10 23:59:06,592 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-10 23:59:06,592 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 00:11:46,466 [net_monitor] DEBUG: socket 连接 baidu.com:80 失败: [Errno -3] Temporary failure in name resolution
2026-06-11 00:18:33,368 [fan_controller] INFO: 风扇1: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 00:18:33,369 [fan_controller] INFO: 风扇2: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 00:23:22,546 [net_monitor] DEBUG: socket 连接 baidu.com:80 失败: [Errno -3] Temporary failure in name resolution
2026-06-11 00:25:24,110 [net_monitor] DEBUG: socket 连接 baidu.com:80 失败: [Errno -3] Temporary failure in name resolution
2026-06-11 01:19:08,027 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 01:19:08,027 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 01:19:13,189 [fan_controller] INFO: 风扇1: CPU=49.7°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 01:19:13,190 [fan_controller] INFO: 风扇2: CPU=49.7°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 01:44:35,970 [fan_controller] INFO: 风扇1: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 01:44:35,971 [fan_controller] INFO: 风扇2: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 02:34:40,632 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 02:34:40,633 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 02:34:45,794 [fan_controller] INFO: 风扇1: CPU=49.3°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 02:34:45,795 [fan_controller] INFO: 风扇2: CPU=49.3°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 02:56:47,464 [fan_controller] INFO: 风扇1: CPU=44.3°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 02:56:47,464 [fan_controller] INFO: 风扇2: CPU=44.3°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 03:59:56,798 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 03:59:56,798 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 04:00:01,959 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 04:00:01,960 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 04:23:46,882 [fan_controller] INFO: 风扇1: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 04:23:46,883 [fan_controller] INFO: 风扇2: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 05:08:31,279 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 05:08:31,279 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 05:08:36,441 [fan_controller] INFO: 风扇1: CPU=49.3°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 05:08:36,442 [fan_controller] INFO: 风扇2: CPU=49.3°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 05:26:35,388 [fan_controller] INFO: 风扇1: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 05:26:35,389 [fan_controller] INFO: 风扇2: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 06:29:29,058 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 06:29:29,059 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 06:29:34,235 [fan_controller] INFO: 风扇1: CPU=49.7°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 06:29:34,235 [fan_controller] INFO: 风扇2: CPU=49.7°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 06:52:27,543 [fan_controller] INFO: 风扇1: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 06:52:27,543 [fan_controller] INFO: 风扇2: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 07:46:39,969 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 07:46:39,970 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 07:46:45,132 [fan_controller] INFO: 风扇1: CPU=49.3°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 07:46:45,133 [fan_controller] INFO: 风扇2: CPU=49.3°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 08:12:23,496 [fan_controller] INFO: 风扇1: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 08:12:23,496 [fan_controller] INFO: 风扇2: CPU=44.7°C, HD=1.0°C, PWM 50->0 (目标0)
2026-06-11 09:10:07,541 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 09:10:07,541 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 0->30 (目标50)
2026-06-11 09:10:12,704 [fan_controller] INFO: 风扇1: CPU=50.0°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 09:10:12,704 [fan_controller] INFO: 风扇2: CPU=50.0°C, HD=1.0°C, PWM 30->50 (目标50)
2026-06-11 09:12:21,042 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:21,051 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/device
2026-06-11 09:12:26,525 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:36,734 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:42,636 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:43,177 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:43,755 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:44,329 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:44,916 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:45,489 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:46,066 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:46,650 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:47,227 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:47,811 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:48,409 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:49,046 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:51,044 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:53,047 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:55,048 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:57,043 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:12:59,048 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:13:01,044 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:13:03,047 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:13:05,047 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:13:07,046 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:13:09,047 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:13:11,048 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:13:13,046 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status
2026-06-11 09:13:15,046 [app] DEBUG: 网关请求缺少X-Trim-Uid Header: GET /api/status