Oracle Free Tier Grabber 状态页
{
"hostname": "ser090368281166",
"project_dir": "/opt/oracle-free-tier-grabber",
"services": {
"run": {
"active": "active",
"enabled": "enabled"
},
"upgrade_watch": {
"active": "active",
"enabled": "enabled"
},
"healthcheck_timer": {
"active": "active",
"enabled": "enabled"
}
},
"healthcheck_status": {
"checked_at": "2026-05-01T03:58:32.545049+00:00",
"healthy": true,
"issues": [],
"actions_planned": [],
"run_service": {
"name": "oracle-free-tier-run.service",
"active": true,
"enabled": true,
"main_pid": 19352,
"log_path": "/opt/oracle-free-tier-grabber/logs/run.log",
"log_exists": true,
"log_age_seconds": 40.504865,
"log_recent": true,
"waiting_state_ok": false,
"issues": []
},
"upgrade_service": {
"name": "oracle-free-tier-upgrade-watch.service",
"active": true,
"enabled": true,
"main_pid": 19315,
"log_path": "/opt/oracle-free-tier-grabber/logs/upgrade-watch.log",
"log_exists": true,
"log_age_seconds": 260.212431,
"log_recent": true,
"waiting_state_ok": true,
"issues": []
},
"instance_state": {
"exists": false,
"valid": true,
"path": "/opt/oracle-free-tier-grabber/state/instance.json",
"summary": {},
"error": ""
}
},
"instance_state": {},
"log_tail": {
"run.log": [
"2026-05-01 03:47:53,598 [INFO] 第 587 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:48:44,242 [INFO] 第 588 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:49:30,830 [INFO] 第 589 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:50:20,343 [INFO] 第 590 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:50:55,901 [INFO] 第 591 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:51:30,473 [INFO] 第 592 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:52:06,007 [INFO] 第 593 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:53:04,548 [INFO] 第 594 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:53:47,084 [INFO] 第 595 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:54:37,683 [INFO] 第 596 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:55:24,252 [INFO] 第 597 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:56:09,755 [INFO] 第 598 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:57:03,416 [INFO] 第 599 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:57:51,980 [INFO] 第 600 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:58:49,584 [INFO] 第 601 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 03:59:38,118 [INFO] 第 602 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 04:00:33,777 [INFO] 第 603 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 04:01:30,378 [INFO] 第 604 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 04:02:23,918 [INFO] 第 605 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 04:03:05,565 [INFO] 第 606 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0"
],
"upgrade-watch.log": [
"2026-05-01 01:38:50,855 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 01:46:33,878 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 01:53:35,904 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 02:00:56,928 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 02:08:16,954 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 02:15:49,980 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 02:23:42,007 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 02:31:58,029 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 02:38:44,059 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 02:46:03,085 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 02:53:42,111 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 03:02:12,137 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 03:10:28,163 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 03:17:45,195 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 03:25:19,221 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 03:32:47,248 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 03:39:54,273 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 03:47:51,301 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 03:54:12,327 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 04:01:26,356 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。"
],
"healthcheck.log": [
"2026-05-01 02:21:02,562 [INFO] 健康检查通过。",
"2026-05-01 02:26:18,293 [INFO] 健康检查通过。",
"2026-05-01 02:31:21,972 [INFO] 健康检查通过。",
"2026-05-01 02:36:28,101 [INFO] 健康检查通过。",
"2026-05-01 02:41:32,488 [INFO] 健康检查通过。",
"2026-05-01 02:46:40,171 [INFO] 健康检查通过。",
"2026-05-01 02:51:41,801 [INFO] 健康检查通过。",
"2026-05-01 02:56:42,847 [INFO] 健康检查通过。",
"2026-05-01 03:01:51,586 [INFO] 健康检查通过。",
"2026-05-01 03:06:52,265 [INFO] 健康检查通过。",
"2026-05-01 03:12:07,208 [INFO] 健康检查通过。",
"2026-05-01 03:17:09,259 [INFO] 健康检查通过。",
"2026-05-01 03:22:12,478 [INFO] 健康检查通过。",
"2026-05-01 03:27:32,066 [INFO] 健康检查通过。",
"2026-05-01 03:32:32,368 [INFO] 健康检查通过。",
"2026-05-01 03:37:32,486 [INFO] 健康检查通过。",
"2026-05-01 03:43:08,986 [INFO] 健康检查通过。",
"2026-05-01 03:48:12,495 [INFO] 健康检查通过。",
"2026-05-01 03:53:32,571 [INFO] 健康检查通过。",
"2026-05-01 03:58:32,547 [INFO] 健康检查通过。"
]
}
}