2010-10-29 48 views
8

Tôi đang tìm cách để chương trình dòng lệnh có thể gửi email đầu ra log4net của mình tới một nhóm người dùng. Ngay bây giờ, tôi đang đọc tệp nhật ký nhưng tôi phải gọi log4net.LogManager.Shutdown() để phát hành tệp để tôi có thể đọc nó và tôi phải mã hóa cứng tên tệp nhật ký hoặc phân tích cú pháp cấu hình log4net cho nó . Tôi muốn có thể cấu hình một appender bổ sung đăng nhập vào một vị trí bộ nhớ mà tôi có thể đọc từ đó.Có ứng dụng bộ nhớ log4net không?

Tôi không ngại tạo một ứng dụng mới cho chức năng này, nhưng tôi không chắc chắn lựa chọn tốt nhất là gì. Tôi chắc chắn không muốn dựa vào một tập tin, cơ sở dữ liệu, hoặc nguồn dữ liệu bên ngoài chỉ để có được đầu ra đăng nhập của tôi.

Trả lời

14

Có, có log4net.Appender.MemoryAppender. Nó có một phương pháp GetEvents() mà bạn có thể sử dụng để có được các sự kiện đã được đăng nhập.

+2

Bây giờ, tôi đã xem danh sách xây dựng trong các ứng dụng và không thấy điều đó. Tôi thề là tôi bị mù. 1 để gọi tôi trên đó. – Chris

1

Ứng dụng SmtpAppender có phù hợp hơn với mục đích sử dụng này không? Nó gửi email trực tiếp.

+1

Tôi đồng ý thuộc tính BufferSize cũng có thể được sử dụng để định cấu hình batching; nhưng không phải nếu bạn muốn nói một email mỗi ngày hoặc như vậy. –

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