2012-06-21 36 views
5

Tôi đang tìm kiếm một tính năng để cho phép loggin/truy tìm trong ASP.NET MVC 4 Web Api. Trong WCF bạn có thể kích hoạt ghi nhật ký và WCF ghi rằng nó đang thực hiện. Sau đó, tôi có thể mở bãi chứa và tìm kiếm lỗi.ASP.NET MVC 4 Web Api: Các tính năng chẩn đoán

Tôi không muốn theo dõi api trên web của mình nhưng đăng nhập mà khung làm việc. Nếu tôi theo dõi/đăng nhập api trên web bằng trình xử lý tin nhắn, tôi sẽ không nhận được thông tin nếu xảy ra lỗi trước khi triển khai.

Trả lời

4

Tôi muốn đề xuất hai điều.

1) Để biết đầy đủ chi tiết về các trường hợp ngoại lệ được ném, tôi sẽ đặt chính sách lỗi thành luôn. Điều này sẽ trả về các thông báo ngoại lệ chi tiết hơn từ mã của bạn.

GlobalConfiguration.Configuration.IncludeErrorDetailPolicy = IncludeErrorDetailPolicy.Always; 

Tôi nghĩ điều này chỉ hoạt động trong RC.

2) Sau đó, tôi cũng khuyên bạn nên kết nối một trình xử lý tin nhắn mà bạn có thể sử dụng để thêm thông tin yêu cầu/phản hồi. Trình xử lý tin nhắn sẽ chạy khi có yêu cầu mới và ngay trước khi các phản hồi cuối cùng trả về. Có rất nhiều ví dụ về điều này trực tuyến. WebAPIContrib có một trong đó là GitHub repo bạn có thể có một cái nhìn tại như một example

3) Nếu bạn muốn theo dõi các sự kiện máy chủ khác, bạn có thể muốn xem xét sử dụng asp.net health monitoring, miễn là bạn đang lưu trữ trong asp. net của khóa học. Nó sẽ cho phép bạn thực hiện các kiểm tra khác nhau và giám sát các lỗi máy chủ.

+0

Hi, tôi không muốn sử dụng xử lý tin nhắn, vì họ sẽ không làm việc trong trường hợp này. Tôi cần một bản ghi rằng khung công tác đang làm. Ví dụ, các trình xử lý tin nhắn sẽ không được gọi nếu một lỗi xảy ra trong khi máy chủ khởi động. – user437899

+0

Lỗi máy chủ sẽ không được cụ thể cho api web sau đó. bạn đã theo dõi sức khỏe chưa? Tôi có thể thêm nó với một số liên kết đến câu trả lời của tôi – cecilphillip

+4

Bạn nên * không bao giờ * sử dụng ** IncludeErrorDetailPolicy.Always ** trong môi trường sản xuất là lỗ hổng Thông tin Diclosure: ngoại lệ chứa các chi tiết có thể được sử dụng để tìm cách hack hệ thống của bạn (xem https://www.owasp.org/index.php/Information_Leak_(information_disclosure)) – Isantipov

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