2009-09-02 35 views
6

Tôi có một ứng dụng web asp.net cũ dựa trên .net framework 1.1, nó đã được triển khai cho máy chủ trực tiếp trong nhiều năm, ngay bây giờ tôi đang gặp một số vấn đề với chỉ trang web sống, phiên bản phát triển trên máy tính của tôi hoạt động tốt. Vì vậy, tôi đang suy nghĩ về đính kèm một trình gỡ lỗi từ xa vào trang web trực tiếp và theo dõi những gì đã xảy ra chính xác trên máy chủ trực tiếp, nhưng tôi không biết làm thế nào để làm điều đó.Cách gỡ lỗi ứng dụng asp.net trên máy chủ trực tiếp

Tôi đã sử dụng trình gỡ lỗi từ xa trước đó, nhưng đã được sử dụng khi tạo dự án mới trên một số máy chủ phát triển trong LAN cục bộ và nguồn và dự án thực sự trên máy chủ từ xa, tôi vừa đính kèm trình gỡ lỗi từ máy tính để bàn của mình vào máy chủ đó , nó hoạt động tốt. Nhưng tôi không chắc chắn làm thế nào để gỡ lỗi một ứng dụng trên máy chủ trực tiếp.

Rất cám ơn sự giúp đỡ của bạn!

+0

Thực sự sẽ giúp biết các loại sự cố mà trang web đang gặp phải - có thể cung cấp hướng dẫn chính để gỡ lỗi lệnh. –

+0

về cơ bản máy chủ sống đột nhiên sẽ nhận được sử dụng CPU khá cao cho quá trình w3wp và chúng tôi thấy có một số httpwebrequest gửi ra bởi ứng dụng được ngừng gửi hoặc nhận, nhiều kết nối CLOSE_WAIT ở đó nhưng không có kết nối hoạt động nữa. Cảm ơn. – user167466

Trả lời

6

Vâng vâng có thể, nhưng có liên quan nhiều hơn. Bạn sẽ cần phải đính kèm vào quá trình nhân viên IIS đang chạy trang web (w3wp.exe). Tôi đã không thực hiện nó rất thường xuyên, và tôi thường cố gắng tránh nó, bởi vì trong khi bạn đang đính kèm không ai có thể truy cập vào trang web.

Đây là một bài viết giải thích quy trình.

http://www.codeproject.com/KB/aspnet/ProcessAttache.aspx

bài viết này dựa trên 2.0 không 1.1, nhưng nó vẫn sẽ cho bạn một ý tưởng về làm thế nào để làm điều đó. Tôi cho rằng bạn sẽ phải có phòng thu trực quan trên máy chủ sản xuất.

Nếu điều này không khả thi và bạn có quyền truy cập vào mã, bạn cũng có thể thử đăng nhập vào một tệp văn bản tại một số điểm nhất định trong ứng dụng. Tôi đã thực hiện điều này rất hiệu quả để tìm các vấn đề, cho phép bạn để cho trang web chạy bình thường và chỉ cần kiểm tra tệp nhật ký sau khi bạn biết sự cố đã xảy ra.

Bạn có thể muốn kiểm tra log4net, đây là ứng dụng ghi nhật ký miễn phí.

Chúc may mắn

+0

Cảm ơn bạn rất nhiều vì đã giúp đỡ. Tôi đã kiểm tra bài viết, bạn nói đúng, đó không phải là cách tiếp cận tốt nhất để theo dõi trang web trực tiếp. Tôi sẽ thử thêm đăng nhập vào phần nghi ngờ của mã. Ngoài ra tôi sử dụng DebugDiag cũng nhận được một số thông tin, nhưng thật khó cho tôi để liên kết nó với mã của tôi. – user167466

6

Vâng, tại sao bạn không thử bật truy tìm trên máy chủ? Sau đó, bạn có thể xem tất cả thông tin trong một trang riêng biệt? Để bật trong web.config:

<configuration> 
    <system.web> 
    <trace enabled="true" pageOutput="false" requestLimit="40" 
     localOnly="false"/> 
    </system.web> 
</configuration> 

Sau đó, tải trang trace.axd trong trang web của bạn để xem dữ liệu cấp trang.

+0

Cảm ơn rất nhiều vì đã trả lời. Tôi không chắc chắn nếu chỉ cho phép theo dõi sẽ cung cấp cho tôi đủ thông tin để tìm ra một số vấn đề thời gian chờ, tôi muốn biết ở đâu và khi những thời gian chờ xảy ra. chính xác những gì họ đang chờ đợi. Bạn có biết làm cách nào để đính kèm trình gỡ lỗi vào máy chủ trực tiếp không? sao tôi nên cài đặt các thành phần VS.net 2003 trên máy chủ trực tiếp trước để cho phép gỡ lỗi? cảm ơn. – user167466

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