Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Log4Net hoạt động trên máy Dev, không thành công khi triển khai đến máy chủ được chia sẻ (sử dụng cùng một db / connstring)

Theo kinh nghiệm của tôi, log4net thường nuốt bất kỳ lỗi nội bộ nào, chỉ đơn giản là dẫn đến các câu lệnh nhật ký không tạo ra bất kỳ kết quả nào.

Những gì bạn có thể muốn thử là kích hoạt tính năng ghi nhật ký nội bộ của log4net. Bạn có thể thực hiện việc này bằng cách thêm phần sau vào appSettings của mình phần:

<add key="log4net.Internal.Debug" value="true" />

Điều này đặt thuộc tính LogLog.InternalDebugging thành true . log4net bây giờ sẽ đăng nhập vào các luồng lỗi và đầu ra tiêu chuẩn và tới các trình nghe theo dõi đã định cấu hình.

Bạn có thể sử dụng cấu hình sau để nắm bắt bất kỳ thông báo nào được ghi lại để theo dõi:

<system.diagnostics>
  <trace autoflush="false" indentsize="4">
    <listeners>
      <add name="myListener"
        type="System.Diagnostics.TextWriterTraceListener"
        initializeData="c:\TextWriterOutput.log" />
      <remove name="Default" />
    </listeners>
  </trace>
</system.diagnostics>

Tất cả các thư được log4net ghi lại nội bộ sẽ xuất hiện trong TextWriterOutput.log . Nếu bạn nhận được SecurityException khi bạn thêm trình nghe theo dõi vào cấu hình của mình, thì rất có thể danh tính apppool không có đủ quyền để tạo tệp tại vị trí được chỉ định (trong ví dụ:c:\ ). Hãy thử một vị trí khác hoặc cung cấp đủ quyền cho danh tính ứng dụng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xác định phiên bản SQL Server của máy chủ được liên kết

  2. Sử dụng áp dụng chéo trong tuyên bố cập nhật

  3. Làm thế nào để tìm tất cả các khóa ngoại?

  4. Chọn Thứ tự Sớm nhất cho một tập hợp các bài kiểm tra trong SQL dãy ngày

  5. Thủ tục được lưu trữ và điền bảng tạm thời từ Thủ tục được lưu trữ được liên kết với các tham số