2025-12-25 upload
This commit is contained in:
68
diagnose_service.sh
Normal file
68
diagnose_service.sh
Normal file
@@ -0,0 +1,68 @@
|
||||
#!/bin/bash
|
||||
# 服务启动失败诊断脚本
|
||||
|
||||
echo "================================================================"
|
||||
echo " 守护进程服务诊断工具"
|
||||
echo "================================================================"
|
||||
echo ""
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
echo "[1] 检查服务状态"
|
||||
echo "----------------------------------------------------------------"
|
||||
systemctl status bjh_daemon --no-pager
|
||||
echo ""
|
||||
|
||||
echo "[2] 查看服务错误日志(最近50行)"
|
||||
echo "----------------------------------------------------------------"
|
||||
journalctl -u bjh_daemon -n 50 --no-pager
|
||||
echo ""
|
||||
|
||||
echo "[3] 检查Python环境"
|
||||
echo "----------------------------------------------------------------"
|
||||
echo "Python路径: $(which python3)"
|
||||
python3 --version
|
||||
echo ""
|
||||
|
||||
echo "[4] 检查守护进程脚本"
|
||||
echo "----------------------------------------------------------------"
|
||||
if [ -f "$SCRIPT_DIR/data_sync_daemon.py" ]; then
|
||||
echo "[✓] 脚本存在: $SCRIPT_DIR/data_sync_daemon.py"
|
||||
ls -lh "$SCRIPT_DIR/data_sync_daemon.py"
|
||||
else
|
||||
echo "[X] 脚本不存在: $SCRIPT_DIR/data_sync_daemon.py"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
echo "[5] 检查Python依赖"
|
||||
echo "----------------------------------------------------------------"
|
||||
echo "正在检查requirements.txt中的依赖..."
|
||||
if [ -f "$SCRIPT_DIR/requirements.txt" ]; then
|
||||
while IFS= read -r package || [ -n "$package" ]; do
|
||||
# 跳过空行和注释
|
||||
[[ -z "$package" || "$package" =~ ^# ]] && continue
|
||||
|
||||
# 提取包名(忽略版本号)
|
||||
pkg_name=$(echo "$package" | cut -d'=' -f1 | cut -d'>' -f1 | cut -d'<' -f1 | tr -d ' ')
|
||||
|
||||
if python3 -c "import $pkg_name" 2>/dev/null; then
|
||||
echo "[✓] $pkg_name"
|
||||
else
|
||||
echo "[X] $pkg_name 未安装"
|
||||
fi
|
||||
done < "$SCRIPT_DIR/requirements.txt"
|
||||
else
|
||||
echo "[!] requirements.txt 不存在"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
echo "[6] 尝试手动运行守护进程(按Ctrl+C停止)"
|
||||
echo "----------------------------------------------------------------"
|
||||
echo "命令: cd $SCRIPT_DIR && python3 data_sync_daemon.py"
|
||||
echo ""
|
||||
read -p "是否现在运行测试?(y/n): " -n 1 -r
|
||||
echo
|
||||
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
||||
cd "$SCRIPT_DIR"
|
||||
python3 data_sync_daemon.py
|
||||
fi
|
||||
Reference in New Issue
Block a user