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-04-30T21:40:20.997490+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": 52.391868,
"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": 83.004084,
"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-04-30 21:27:27,287 [INFO] 第 84 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:28:11,849 [INFO] 第 85 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:29:10,501 [INFO] 第 86 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:29:46,055 [INFO] 第 87 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:30:34,548 [INFO] 第 88 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:31:24,229 [INFO] 第 89 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:32:24,742 [INFO] 第 90 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:33:15,290 [INFO] 第 91 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:34:07,995 [INFO] 第 92 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:34:43,618 [INFO] 第 93 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:35:30,167 [INFO] 第 94 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:36:02,760 [INFO] 第 95 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:36:47,320 [INFO] 第 96 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:37:18,885 [INFO] 第 97 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:37:59,418 [INFO] 第 98 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:38:53,046 [INFO] 第 99 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:39:28,555 [INFO] 第 100 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:40:21,202 [INFO] 第 101 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:41:04,840 [INFO] 第 102 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-04-30 21:41:58,382 [INFO] 第 103 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0"
],
"upgrade-watch.log": [
"2026-04-30 08:23:14,504 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 08:30:50,536 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 08:37:57,565 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 08:45:34,591 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 08:53:39,619 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 09:01:36,648 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 09:08:55,676 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 09:15:39,706 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 09:23:16,741 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 20:23:45,707 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 20:30:38,736 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 20:38:11,763 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 20:45:21,790 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 20:53:28,815 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 21:01:24,845 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 21:09:11,872 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 21:16:31,903 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 21:24:01,936 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 21:31:47,963 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-04-30 21:38:57,991 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。"
],
"healthcheck.log": [
"2026-04-30 20:23:43,027 [WARNING] 健康检查发现异常,执行修复: systemctl restart oracle-free-tier-run.service",
"2026-04-30 20:23:58,164 [INFO] Oracle grabber healthcheck auto-healed.",
"Issues: oracle-free-tier-run.service log stale",
"Actions: systemctl restart oracle-free-tier-run.service",
"2026-04-30 20:24:01,528 [INFO] 自动修复成功。",
"2026-04-30 20:29:02,471 [INFO] 健康检查通过。",
"2026-04-30 20:34:20,802 [INFO] 健康检查通过。",
"2026-04-30 20:39:21,466 [INFO] 健康检查通过。",
"2026-04-30 20:44:22,243 [INFO] 健康检查通过。",
"2026-04-30 20:49:22,461 [INFO] 健康检查通过。",
"2026-04-30 20:54:32,491 [INFO] 健康检查通过。",
"2026-04-30 20:59:35,242 [INFO] 健康检查通过。",
"2026-04-30 21:04:37,757 [INFO] 健康检查通过。",
"2026-04-30 21:09:38,696 [INFO] 健康检查通过。",
"2026-04-30 21:14:45,840 [INFO] 健康检查通过。",
"2026-04-30 21:19:45,878 [INFO] 健康检查通过。",
"2026-04-30 21:24:51,530 [INFO] 健康检查通过。",
"2026-04-30 21:29:54,565 [INFO] 健康检查通过。",
"2026-04-30 21:34:57,528 [INFO] 健康检查通过。",
"2026-04-30 21:40:20,998 [INFO] 健康检查通过。"
]
}
}