Tôi đang sử dụng log4net với AdoNetAppender. Có vẻ như AdoNetAppender có một số Flush method. Có anyway tôi có thể gọi đó từ mã của tôi?Có cách nào để lập trình xóa bộ đệm trong log4net
Tôi đang cố gắng tạo trang quản trị để xem tất cả các mục nhập trong nhật ký cơ sở dữ liệu và tôi muốn thiết lập log4net với bufferSize = 100 (hoặc nhiều hơn), sau đó tôi muốn quản trị viên có thể nhấp vào trên trang quản trị để buộc log4net ghi các mục đăng nhập được đệm vào cơ sở dữ liệu (mà không cần tắt log4net).
Điều đó có khả thi không?
Tôi nghĩ rằng log4net.LogManager.GetRepository() GetAppenders(); sẽ giúp bạn có được tất cả các ứng cử viên không có vấn đề gì với những gì họ đang đính kèm logger ... –
@Stefan: Vâng phát hiện. Tôi đã cập nhật câu trả lời của mình. Cảm ơn. – Alconja
Kho lưu trữ ILoggerRepository = LogManager.GetRepository(); IEnumerable appenders = repository.GetAppenders() .OfType (); foreach (var appender trong appenders) appender.Flush(); –