stock-ai-agent/backend/diagnose.sh
2026-04-25 13:20:28 +08:00

71 lines
1.8 KiB
Bash

#!/bin/bash
set -e
echo "================================"
echo "Crypto Agent 诊断"
echo "================================"
echo ""
cd /Users/aaron/source_code/Stock_Agent/backend
echo "1. 检查虚拟环境..."
if [ -d "venv" ]; then
source venv/bin/activate
echo " ✓ 虚拟环境存在"
echo "$(python --version 2>&1)"
else
echo " ❌ 虚拟环境不存在"
exit 1
fi
echo ""
echo "2. 检查配置文件..."
if [ -f "../.env" ] || [ -f ".env" ]; then
echo " ✓ .env 文件存在"
else
echo " ❌ .env 文件不存在"
exit 1
fi
echo ""
echo "3. 检查关键依赖..."
packages=("fastapi" "uvicorn" "pandas" "numpy" "sqlalchemy" "pydantic" "ccxt" "httpx" "aiohttp")
for pkg in "${packages[@]}"; do
if python -c "import $pkg" 2>/dev/null; then
echo "$pkg"
else
echo "$pkg 未安装"
fi
done
echo ""
echo "4. 测试配置加载..."
python -c "
from app.config import get_settings
settings = get_settings()
print(' ✓ 配置加载成功')
print(f' - DeepSeek Key: {'已配置' if settings.deepseek_api_key else '未配置'}')
print(f' - 智谱AI Key: {'已配置' if settings.zhipuai_api_key else '未配置'}')
print(f' - Bitget 实盘: {'开启' if settings.bitget_trading_enabled else '关闭'}')
"
echo ""
echo "5. 测试模块导入..."
modules=(\"app.models.database\" \"app.services.cache_service\" \"app.services.bitget_trading_api_sdk\" \"app.crypto_agent.crypto_agent\")
for module in "${modules[@]}"; do
if python -c "import $module" 2>/dev/null; then
echo "$module"
else
echo "$module 导入失败"
fi
done
echo ""
echo "6. 检查端口占用..."
if lsof -i :8000 >/dev/null 2>&1; then
echo " ⚠ 端口8000已被占用"
else
echo " ✓ 端口8000可用"
fi