a
This commit is contained in:
Executable
+152
@@ -0,0 +1,152 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 玩Android Material Design开发服务器测试脚本
|
||||
|
||||
echo "=============================================="
|
||||
echo "玩Android Material Design开发服务器测试"
|
||||
echo "=============================================="
|
||||
echo "测试时间: $(date)"
|
||||
echo ""
|
||||
|
||||
# 测试健康检查
|
||||
echo "1. 测试健康检查接口..."
|
||||
HEALTH_STATUS=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/health)
|
||||
if [ "$HEALTH_STATUS" = "200" ]; then
|
||||
echo " ✅ 健康检查: HTTP $HEALTH_STATUS"
|
||||
HEALTH_DATA=$(curl -s http://localhost:3000/health)
|
||||
echo " 状态: $(echo $HEALTH_DATA | jq -r '.status')"
|
||||
echo " 版本: $(echo $HEALTH_DATA | jq -r '.version')"
|
||||
echo " 运行时间: $(echo $HEALTH_DATA | jq -r '.uptime')秒"
|
||||
else
|
||||
echo " ❌ 健康检查失败: HTTP $HEALTH_STATUS"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# 测试首页
|
||||
echo "2. 测试首页..."
|
||||
HOME_STATUS=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/)
|
||||
if [ "$HOME_STATUS" = "200" ]; then
|
||||
echo " ✅ 首页: HTTP $HOME_STATUS"
|
||||
else
|
||||
echo " ❌ 首页失败: HTTP $HOME_STATUS"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# 测试Material预览页面
|
||||
echo "3. 测试Material Design预览页面..."
|
||||
MATERIAL_STATUS=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/material_preview.html)
|
||||
if [ "$MATERIAL_STATUS" = "200" ]; then
|
||||
echo " ✅ Material预览: HTTP $MATERIAL_STATUS"
|
||||
else
|
||||
echo " ❌ Material预览失败: HTTP $MATERIAL_STATUS"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# 测试API接口
|
||||
echo "4. 测试API接口..."
|
||||
|
||||
# Banner API
|
||||
BANNER_STATUS=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/api/banner/json)
|
||||
if [ "$BANNER_STATUS" = "200" ]; then
|
||||
BANNER_COUNT=$(curl -s http://localhost:3000/api/banner/json | jq '.data | length')
|
||||
echo " ✅ Banner API: HTTP $BANNER_STATUS (数量: $BANNER_COUNT)"
|
||||
else
|
||||
echo " ❌ Banner API失败: HTTP $BANNER_STATUS"
|
||||
fi
|
||||
|
||||
# Hotkey API
|
||||
HOTKEY_STATUS=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/api/hotkey/json)
|
||||
if [ "$HOTKEY_STATUS" = "200" ]; then
|
||||
HOTKEY_COUNT=$(curl -s http://localhost:3000/api/hotkey/json | jq '.data | length')
|
||||
echo " ✅ 热词 API: HTTP $HOTKEY_STATUS (数量: $HOTKEY_COUNT)"
|
||||
else
|
||||
echo " ❌ 热词 API失败: HTTP $HOTKEY_STATUS"
|
||||
fi
|
||||
|
||||
# Article API
|
||||
ARTICLE_STATUS=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/api/article/list/0/json)
|
||||
if [ "$ARTICLE_STATUS" = "200" ]; then
|
||||
ARTICLE_COUNT=$(curl -s http://localhost:3000/api/article/list/0/json | jq '.data.datas | length')
|
||||
echo " ✅ 文章 API: HTTP $ARTICLE_STATUS (数量: $ARTICLE_COUNT)"
|
||||
else
|
||||
echo " ❌ 文章 API失败: HTTP $ARTICLE_STATUS"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# 测试公网访问
|
||||
echo "5. 测试公网访问..."
|
||||
PUBLIC_STATUS=$(curl -s -o /dev/null -w "%{http_code}" --connect-timeout 5 http://129.211.173.87:3000/health)
|
||||
if [ "$PUBLIC_STATUS" = "200" ]; then
|
||||
echo " ✅ 公网访问: HTTP $PUBLIC_STATUS"
|
||||
else
|
||||
echo " ⚠️ 公网访问: HTTP $PUBLIC_STATUS (可能受网络限制)"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# 检查进程状态
|
||||
echo "6. 检查服务器进程..."
|
||||
SERVER_PID=$(ps aux | grep "node server.js" | grep -v grep | awk '{print $2}')
|
||||
if [ -n "$SERVER_PID" ]; then
|
||||
echo " ✅ 服务器进程运行中 (PID: $SERVER_PID)"
|
||||
|
||||
# 检查内存使用
|
||||
MEMORY_USAGE=$(ps -p $SERVER_PID -o %mem | tail -1)
|
||||
CPU_USAGE=$(ps -p $SERVER_PID -o %cpu | tail -1)
|
||||
echo " 内存使用: $MEMORY_USAGE%"
|
||||
echo " CPU使用: $CPU_USAGE%"
|
||||
|
||||
# 检查运行时间
|
||||
UPTIME_SECONDS=$(ps -p $SERVER_PID -o etime= | awk -F: '{if (NF==2) print $1*60+$2; else if (NF==3) print $1*3600+$2*60+$3}')
|
||||
echo " 运行时间: $UPTIME_SECONDS秒"
|
||||
else
|
||||
echo " ❌ 服务器进程未找到"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# 检查端口监听
|
||||
echo "7. 检查端口监听..."
|
||||
PORT_LISTEN=$(netstat -tlnp 2>/dev/null | grep :3000 || ss -tlnp 2>/dev/null | grep :3000)
|
||||
if [ -n "$PORT_LISTEN" ]; then
|
||||
echo " ✅ 端口3000正在监听"
|
||||
echo "$PORT_LISTEN" | head -1
|
||||
else
|
||||
echo " ❌ 端口3000未监听"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# 检查日志文件
|
||||
echo "8. 检查服务器日志..."
|
||||
LOG_FILE="/home/ubuntu/wanandroid/uniapp_android/server.log"
|
||||
if [ -f "$LOG_FILE" ]; then
|
||||
LOG_SIZE=$(du -h "$LOG_FILE" | cut -f1)
|
||||
LOG_LINES=$(wc -l < "$LOG_FILE")
|
||||
echo " ✅ 日志文件存在"
|
||||
echo " 文件大小: $LOG_SIZE"
|
||||
echo " 行数: $LOG_LINES"
|
||||
|
||||
# 显示最后5行日志
|
||||
echo " 最后5行日志:"
|
||||
tail -5 "$LOG_FILE" | sed 's/^/ /'
|
||||
else
|
||||
echo " ⚠️ 日志文件不存在"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
echo "=============================================="
|
||||
echo "测试完成!"
|
||||
echo ""
|
||||
|
||||
# 汇总结果
|
||||
echo "访问信息汇总:"
|
||||
echo "本地访问: http://localhost:3000"
|
||||
echo "公网访问: http://129.211.173.87:3000"
|
||||
echo "项目路径: /home/ubuntu/wanandroid/uniapp_android"
|
||||
echo ""
|
||||
|
||||
if [ "$HEALTH_STATUS" = "200" ] && [ "$HOME_STATUS" = "200" ] && [ -n "$SERVER_PID" ]; then
|
||||
echo "✅ 服务器运行正常!"
|
||||
exit 0
|
||||
else
|
||||
echo "⚠️ 服务器可能存在异常,请检查!"
|
||||
exit 1
|
||||
fi
|
||||
Reference in New Issue
Block a user