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-01T21:20:23.713059+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": 41.316796,
"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": 222.65641,
"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 21:06:17,765 [INFO] 第 1945 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:06:57,279 [INFO] 第 1946 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:07:42,875 [INFO] 第 1947 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:08:33,417 [INFO] 第 1948 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:09:19,953 [INFO] 第 1949 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:09:54,534 [INFO] 第 1950 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:10:33,038 [INFO] 第 1951 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:11:24,690 [INFO] 第 1952 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:12:10,360 [INFO] 第 1953 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:12:51,859 [INFO] 第 1954 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:13:44,486 [INFO] 第 1955 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:14:32,990 [INFO] 第 1956 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:15:28,587 [INFO] 第 1957 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:16:08,174 [INFO] 第 1958 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:17:05,762 [INFO] 第 1959 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:18:12,490 [INFO] 第 1960 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:18:47,931 [INFO] 第 1961 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:19:42,347 [INFO] 第 1962 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:20:35,763 [INFO] 第 1963 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0",
"2026-05-01 21:21:31,241 [INFO] 第 1964 次探测未命中容量: OUT_OF_HOST_CAPACITY / available_count=0"
],
"upgrade-watch.log": [
"2026-05-01 18:54:09,577 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 19:02:01,606 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 19:09:54,632 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 19:17:43,656 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 19:25:32,679 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 19:33:05,698 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 19:41:01,724 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 19:48:23,754 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 19:56:06,777 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 20:03:31,800 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 20:10:59,821 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 20:18:36,848 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 20:25:38,874 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 20:33:27,903 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 20:40:34,928 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 20:47:37,953 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 20:54:26,978 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 21:02:18,004 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 21:09:36,031 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。",
"2026-05-01 21:16:41,053 [INFO] 尚未检测到已创建实例,upgrade-watch 将继续等待 run 成功后再开始升配监控。"
],
"healthcheck.log": [
"2026-05-01 19:42:08,658 [INFO] 健康检查通过。",
"2026-05-01 19:47:09,801 [INFO] 健康检查通过。",
"2026-05-01 19:52:12,497 [INFO] 健康检查通过。",
"2026-05-01 19:57:32,486 [INFO] 健康检查通过。",
"2026-05-01 20:03:02,551 [INFO] 健康检查通过。",
"2026-05-01 20:08:32,539 [INFO] 健康检查通过。",
"2026-05-01 20:13:37,415 [INFO] 健康检查通过。",
"2026-05-01 20:18:38,807 [INFO] 健康检查通过。",
"2026-05-01 20:23:39,817 [INFO] 健康检查通过。",
"2026-05-01 20:28:41,728 [INFO] 健康检查通过。",
"2026-05-01 20:33:42,557 [INFO] 健康检查通过。",
"2026-05-01 20:39:13,296 [INFO] 健康检查通过。",
"2026-05-01 20:44:17,079 [INFO] 健康检查通过。",
"2026-05-01 20:49:17,918 [INFO] 健康检查通过。",
"2026-05-01 20:54:21,424 [INFO] 健康检查通过。",
"2026-05-01 20:59:22,488 [INFO] 健康检查通过。",
"2026-05-01 21:04:32,463 [INFO] 健康检查通过。",
"2026-05-01 21:09:40,939 [INFO] 健康检查通过。",
"2026-05-01 21:14:44,130 [INFO] 健康检查通过。",
"2026-05-01 21:20:23,714 [INFO] 健康检查通过。"
]
}
}