2012-11-16 37 views
5

Tình huống là: chúng tôi có một số trường hợp ứng dụng đang hoạt động, được phát triển trên C#. Chúng tôi muốn họ đăng nhập vào một nơi (có thể là một tệp). Theo như tôi biết log4netNLog có thể gửi nhật ký qua TCP. Vấn đề là - làm thế nào để lắng nghe những bản ghi này và lưu trữ nó? Có giải pháp làm việc nào để thu thập các nhật ký này không?Làm thế nào để tổ chức khai thác tập trung?

Trả lời

1

Trong NLog bạn có thể xem xét các mục tiêu Database . NLog có một số mục tiêu khác mà bạn có thể xem xét, bao gồm cả LogReceiverService, gửi thông điệp ghi nhật ký đến Dịch vụ WCF hoặc Dịch vụ Web, tại đó chúng có thể được ghi vào bất kỳ mục tiêu NLog nào, kể cả tệp.

Trong log4Net bạn có thể xem xét AdoNetAppender. Ví dụ về cấu hình here.

Tôi sẽ lưu ý rằng, trong quá khứ, tôi đã triển khai một LoggingService dựa trên WCF (cuối cùng tương tự như LogReceiverService của NLog), hoạt động tốt cho tôi.

0

Tốt hơn nên sử dụng tính năng Thông tin chi tiết về ứng dụng do MS cung cấp. nó có thể được sử dụng bất kỳ ngôn ngữ nào không chỉ là ngôn ngữ của Microsoft. Thông tin chi tiết về ứng dụng được chia thành 2 phần. SDk cho đo đạc từ xa (dữ liệu nhật ký) và trực quan hóa các nhật ký này trong bảng điều khiển màu xanh lam. SDK là mã nguồn mở và bạn cần phải trả tiền cho các công cụ trực quan hóa. nếu bạn không muốn trả tiền sau đó sử dụng insgists ứng dụng trong mã của bạn và gửi những bản ghi để ngăn xếp đàn hồi đó là mã nguồn mở

kiến ​​trúc tốt nhất

MS Application Insights - cho instrumenting bản ghi

Apache Kafka - hoạt động như một đường ống và stoarge là tạm thời, gửi các bản ghi của bạn để Kafka

logstash-- một bộ lọc mà bạn có thể lọc đăng nhập

elasticsearch - một không db sql đến nơi dữ liệu đã lọc s tored

kibana - bảng gạch ngang giúp lấy dữ liệu từ đàn hồi và đưa ra các biến thể.

bạn cũng có thể liên kết đầu ra tia lửa tới kafka để kích hoạt cảnh báo dưới dạng email, tin nhắn văn bản.

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