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-01T11:31:44.333219+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": 0.418977,
"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": 143.317825,
"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 11:19:34,240 [INFO] 第 1179 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:20:25,846 [INFO] 第 1180 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:21:09,418 [INFO] 第 1181 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:22:01,054 [INFO] 第 1182 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:22:44,615 [INFO] 第 1183 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:23:43,316 [INFO] 第 1184 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:24:14,855 [INFO] 第 1185 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:24:46,436 [INFO] 第 1186 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:25:45,047 [INFO] 第 1187 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:26:45,572 [INFO] 第 1188 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:27:28,237 [INFO] 第 1189 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:28:20,933 [INFO] 第 1190 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:28:55,592 [INFO] 第 1191 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:29:47,140 [INFO] 第 1192 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:30:26,708 [INFO] 第 1193 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:30:59,303 [INFO] 第 1194 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:31:43,861 [INFO] 第 1195 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:32:21,468 [INFO] 第 1196 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:33:08,028 [INFO] 第 1197 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 11:34:06,582 [INFO] 第 1198 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0"
],
"upgrade-watch.log": [
"2026-05-01 09:04:44,470 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 09:12:24,493 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 09:19:45,518 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 09:27:05,553 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 09:34:18,576 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 09:41:40,601 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 09:48:57,633 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 09:56:33,660 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 10:04:18,684 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 10:11:41,719 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 10:19:22,755 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 10:26:33,780 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 10:33:48,806 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 10:41:41,831 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 10:49:47,858 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 10:58:17,886 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 11:06:29,919 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 11:14:32,946 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 11:21:49,978 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 11:29:21,008 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。"
],
"healthcheck.log": [
"2026-05-01 09:53:32,499 [INFO] 健康检查通过。",
"2026-05-01 09:58:34,629 [INFO] 健康检查通过。",
"2026-05-01 10:03:45,751 [INFO] 健康检查通过。",
"2026-05-01 10:08:58,157 [INFO] 健康检查通过。",
"2026-05-01 10:14:11,024 [INFO] 健康检查通过。",
"2026-05-01 10:19:21,516 [INFO] 健康检查通过。",
"2026-05-01 10:24:32,574 [INFO] 健康检查通过。",
"2026-05-01 10:29:33,032 [INFO] 健康检查通过。",
"2026-05-01 10:34:33,526 [INFO] 健康检查通过。",
"2026-05-01 10:40:29,419 [INFO] 健康检查通过。",
"2026-05-01 10:45:29,479 [INFO] 健康检查通过。",
"2026-05-01 10:50:32,043 [INFO] 健康检查通过。",
"2026-05-01 10:55:32,573 [INFO] 健康检查通过。",
"2026-05-01 11:00:42,512 [INFO] 健康检查通过。",
"2026-05-01 11:05:53,392 [INFO] 健康检查通过。",
"2026-05-01 11:10:57,200 [INFO] 健康检查通过。",
"2026-05-01 11:16:06,334 [INFO] 健康检查通过。",
"2026-05-01 11:21:09,872 [INFO] 健康检查通过。",
"2026-05-01 11:26:32,524 [INFO] 健康检查通过。",
"2026-05-01 11:31:44,335 [INFO] 健康检查通过。"
]
}
}