Troubleshooting Hướng dẫn W5 & W6
Tài liệu hướng dẫn xử lý các sự cố thường gặp trong giai đoạn cấu hình Data Pipeline, Database, và Deployment (Sprint 3).
1. Lỗi kết nối MSSQL
- Triệu chứng: Không thể kết nối DB từ FastAPI, lỗi
Connection refusedhoặcLogin failed for user. - Nguyên nhân có thể: MSSQL Server chưa được start, cấu hình TCP/IP bị tắt trong SQL Server Configuration Manager, sai thông tin credentials.
- Các bước khắc phục:
1. Kiểm tra services.msc xem dịch vụ SQL Server (MSSQLSERVER) đang chạy hay chưa.
2. Mở SQL Server Configuration Manager, bật (Enable) TCP/IP trong mục Network Configuration.
3. Restart dịch vụ SQL Server.
4. Kiểm tra lại thông tin username/password trong chuỗi kết nối (.env).
2. Cài đặt ChromaDB thất bại
- Triệu chứng: Lỗi khi chạy
pip install chromadb, thường báo lỗi liên quan đến trình biên dịch C++ hoặchnswlib. - Nguyên nhân có thể: Thiếu Build Tools for Visual Studio (do ChromaDB cần biên dịch C++ native extensions).
- Các bước khắc phục:
1. Tải và cài đặt Microsoft C++ Build Tools.
2. Chọn workload "Desktop development with C++" khi cài đặt.
3. Khởi động lại terminal và chạy lạipip install chromadb.
3. Lỗi IIS HttpPlatformHandler
- Triệu chứng: Khi chạy trên IIS bị lỗi HTTP 500.19 hoặc 502.3 Bad Gateway.
- Nguyên nhân có thể: HttpPlatformHandler chưa được cài, sai đường dẫn tới file chạy Python hoặc
processPathkhông chính xác trongweb.config. - Các bước khắc phục:
1. Đảm bảo đã cài đặt HttpPlatformHandler v1.2.
2. Kiểm traweb.config, đảm bảoprocessPathtrỏ đúng thư mục Python (python.exehoặc thư mục venv).
3. Kiểm tra các quyền đọc/thực thi của IIS_IUSRS trên thư mục mã nguồn.
4. Kiểm tra log của IIS để có thêm chi tiết (hoặc stdout log cấu hình trongweb.config).
4. Python venv không kích hoạt được
- Triệu chứng: Gõ
.\venv\Scripts\activatebáo lỗiExecution of scripts is disabled on this system. - Nguyên nhân có thể: Chính sách thực thi (Execution Policy) của PowerShell hạn chế chạy script.
- Các bước khắc phục:
1. Mở PowerShell dưới quyền Admin.
2. Chạy lệnh:Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser.
3. Kích hoạt lại.\venv\Scripts\activate.
5. Lỗi pip install timeout hoặc không tìm thấy package
- Triệu chứng: Cài đặt thư viện bằng
pipbáo lỗiReadTimeoutErrorhoặcCould not find a version that satisfies the requirement. - Nguyên nhân có thể: Mạng chậm, tường lửa/proxy chặn kết nối tới PyPI, hoặc dùng phiên bản Python không tương thích với package.
- Các bước khắc phục:
1. Nâng cấp pip:python -m pip install --upgrade pip.
2. Thử tăng thời gian timeout bằng flag--default-timeout=100:pip install --default-timeout=100 <package_name>.
3. Kiểm tra lại phiên bản Python (ví dụ: một số package chưa hỗ trợ phiên bản Python mới nhất).