Tôi đã thêm đoạn mã sau vào file web.config của tôi:Làm thế nào để gửi đầu ra theo dõi tới một tệp trong hệ thống tệp?
<system.diagnostics>
<trace autoflush="false" indentsize="4" >
<listeners>
<add name="myListener"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="d:\debugging.txt" />
<remove name="Default"></remove>
</listeners>
</trace>
</system.diagnostics>
Và tôi đã viết dòng này để gửi dấu vết đầu ra:
System.Diagnostics.Trace.Write(sID + " tracing id");
Nhưng, tôi không thể nhìn thấy bất kỳ "gỡ rối. txt "tập tin được tạo trên ổ đĩa d của tôi và không có đầu ra dấu vết.
Tôi có thiếu gì đó không?
Đối với tệp, bạn cần phải có 'autoflush =" true "'. – leppie
Có, sau khi thực hiện autoflush = "true", đầu ra dấu vết đến trong tệp đích, nhưng từ dòng: HttpContext.Current.Trace.Write (sID + "truy tìm id"); không phải từ System.Diagnostics.Trace. Và nếu tôi loại bỏ thuộc tính writeToDiagnosticsTrace = "true" khỏi System.Web configSection thì theo dõi HttpContext cũng không hoạt động rõ ràng. – teenup
ASP.NET hiển thị thông báo theo dõi bất cứ khi nào truy tìm được kích hoạt cho một trang. ('trace.axd TraceViewer'). Để định tuyến các tin nhắn Trace đến một trang Web ASP.NET, bạn phải thêm một đối tượng 'WebPageTraceListener'. Để xem các thông báo theo dõi ASP.NET và System.Diagnostics trong một ngữ cảnh bên ngoài một trang ASP.NET, hãy sử dụng đối tượng 'TextWriterTraceListener' để ghi các thông điệp theo dõi vào một tệp. – Kiquenet