2016-03-02 29 views
5

Vấn đề tôi phải đối mặt ngay bây giờ:Làm thế nào để gỡ lỗi từ xa trong PyCharm

  • tôi triển khai mã Python trên một máy chủ từ xa thông qua SSH
  • các kịch bản được thông qua một số tranh cãi và phải được chạy bởi một cụ thể người dùng
  • cấu hình chạy/gỡ lỗi PyCharm mà tôi tạo kết nối thông qua SSH qua người dùng khác (không thể kết nối với người dùng thực sự chạy tập lệnh)
  • Tôi muốn gỡ lỗi mã này qua PyCharm ... Tôi quản lý để làm tất cả các cấu hình, tôi chỉ nhận được sự cho phép lỗi.

Có cách nào để tôi có thể chạy/gỡ lỗi tập lệnh dưới dạng người dùng cụ thể (như sudo su - user) không?

Tôi đã đọc về việc chỉ định một số tùy chọn Python Interpeter trong cấu hình gỡ lỗi/từ xa của PyCharm, nhưng không quản lý để nhận giải pháp làm việc.

Trả lời

8

Nếu bạn muốn một cách dễ dàng và linh hoạt hơn để vào trình gỡ lỗi PyCharm, thay vì nhất thiết phải có nút "phát" một lần trong PyCharm, bạn có thể sử dụng chức năng gỡ lỗi. Tôi đã sử dụng điều này trong các tình huống khi chạy một số mã Python không đơn giản như chạy python ....

Xem the Remote debug with a Python Debug Server docs để biết thêm chi tiết, nhưng đây là một bản tóm tắt sơ bộ cách thức hoạt động:

  1. Tải lên & cài đặt từ xa trứng gỡ lỗi helper trên máy chủ của bạn (Trên OSX, đây là những tìm thấy dưới /Applications/PyCharm.app/Contents/debug-eggs)
  2. Cài đặt cấu hình chạy máy chủ gỡ lỗi từ xa: nhấp vào trình đơn cấu hình chạy thả xuống, chọn Edit configurations..., nhấn nút +, chọn Python remote debug.
    • Chi tiết được nhập ở đây (hơi gây nhầm lẫn) cho máy chủ từ xa chạy tập lệnh Python cách kết nối với cá thể PyCharm của máy tính xách tay của bạn.
    • thiết Local host name đến địa chỉ IP của máy tính xách tay của bạn
    • thiết port với bất kỳ cổng miễn phí mà bạn có thể sử dụng trên máy tính xách tay của bạn (ví dụ 8888)
  3. Bây giờ làm theo hướng dẫn còn lại trong đó hộp thoại: copy-paste importpydevd.settrace(...) câu lệnh vào mã của bạn, cụ thể là nơi bạn muốn mã của mình "đạt điểm ngắt". Về cơ bản, tương đương với PyCharm là import pdb; pdb.set_trace(). Đảm bảo mã đã thay đổi được đồng bộ hóa với máy chủ của bạn.
  4. Nhấn nút lỗi (bên cạnh phát; điều này khởi động máy chủ gỡ lỗi PyCharm), và chạy tập lệnh Python của bạn giống như bạn thường làm, dưới bất kỳ người dùng, môi trường, vv .. Khi điểm dừng được nhấn, PyCharm sẽ rơi vào chế độ kiểm tra sửa lỗi.
+0

Cảm ơn! Tôi đang cố gắng để thiết lập này, tuy nhiên, ở bước 2), nơi tôi có nghĩa vụ phải thiết lập cấu hình máy chủ từ xa - làm thế nào để tôi làm điều này nếu tôi kết nối với nút từ xa thông qua một đường hầm SSH? Dài câu chuyện ngắn, những gì xảy ra là khi tôi chạy mã từ xa bằng cách sử dụng "python

Các vấn đề liên quan