890.sh
1.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/bin/bash
echo "=== 诊断超时问题 ==="
echo "问题分析:"
echo "API Gateway 能够建立连接,但后端应用没有在超时时间内响应"
echo "这通常表示:"
echo "1. 后端应用处理请求太慢"
echo "2. 后端应用崩溃或卡住"
echo "3. 网络延迟问题"
echo ""
echo "1. 检查当前超时设置:"
API_ID="o7epe60qzf"
PROXY_RESOURCE_ID="cjql15"
aws apigateway get-integration \
--rest-api-id $API_ID \
--resource-id $PROXY_RESOURCE_ID \
--http-method ANY \
--query 'TimeoutInMillis' \
--output text
echo ""
echo "2. 增加超时时间到 30秒:"
aws apigateway update-integration \
--rest-api-id $API_ID \
--resource-id $PROXY_RESOURCE_ID \
--http-method ANY \
--patch-operations "[
{
\"op\": \"replace\",
\"path\": \"/timeoutInMillis\",
\"value\": \"30000\"
}
]"
echo "✅ 超时时间已调整为 30秒"
echo ""
echo "3. 使用更长超时时间测试:"
TEST_URL="https://${API_ID}.execute-api.us-east-1.amazonaws.com/prod/health"
echo "测试 (30秒超时): $TEST_URL"
timeout 35 curl -v --max-time 30 "$TEST_URL" 2>&1 | head -50