2012-05-06 26 views
6

Như chúng ta biết, chúng ta có thể sử dụng lớp EventLog để ghi nhật ký sự kiện, nhưng tôi nhầm lẫn về cách viết tên danh mục trong nhật ký sự kiện của mình. Thoug nó cung cấp các thông số thể loại, ví dụ, một trong những loại WriteEntry là:Làm thế nào để viết thể loại nhật ký sự kiện

public void WriteEntry(
string message, 
EventLogEntryType type, 
int eventID, 
short category 

)
Và nó chỉ hiển thị số trong nhật ký của tôi. Tại sao loại danh mục ngắn, không phải chuỗi? Làm thế nào để hiển thị tên danh mục trong Trình xem sự kiện? Cảm ơn! Nhân tiện, chúng tôi sẽ không tạo CategoryMessageFile tùy chỉnh.

Trả lời

5

Bạn có thể viết một entry bản ghi sự kiện với một thể loại nhất định nhưng bạn cần phải tạo ra một dll mẹ đẻ thêm với một bảng Chuỗi Resource được đăng ký trong sổ ghi sự kiện. Điều này làm phức tạp furhter triển khai của bạn. Bạn hiện phải làm trong khi cài đặt

  1. Để tạo nguồn nhật ký sự kiện mới, bạn cần có quyền quản trị mỗi khi bạn tạo nguồn mới. Do đó, bạn nên thu thập tất cả các nguồn để có thể cài đặt cùng một lúc trong quá trình cài đặt ban đầu.
  2. Tạo một dll gốc có chứa một bảng Tài nguyên chuỗi cho mỗi id danh mục bạn muốn cung cấp.
  3. Đăng ký danh mục dll trong sổ đăng ký để làm cho Windows biết về nó.

Bây giờ bạn có thể sử dụng quá tải để viết thông báo nhật ký sự kiện với một danh mục nhất định.

Có một số rất tốt Dr. Jobs Journal article mô tả chính xác vấn đề của bạn.

+0

Có, tôi đã tìm thấy bài viết này, tôi biết chúng tôi có thể tạo thêm một dll gốc, nhưng nó không được khuyến khích trong sự phát triển của chúng tôi. Vì vậy, tôi muốn biết liệu tôi có thể sử dụng tên danh mục hệ thống mặc định không? –

+0

Bạn có ý gì với việc không được khuyến nghị? Đó là cách duy nhất. Nếu bạn sử dụng lại các loại dll từ Windows, bạn vẫn cần phải đăng ký chúng cho nguồn sự kiện của bạn. Bạn chỉ có thể sử dụng một tệp danh mục cho mọi nguồn sự kiện. Bây giờ bạn đang thiết kế các nguồn sự kiện cho mỗi dll danh mục mới mà bạn muốn sử dụng. Tôi nghi ngờ rằng các tên mô tả sẽ ở đó như Source1, Source2, Source3 chỉ để tái sử dụng 3 tệp danh mục differnt có chứa các thư bạn không có quyền kiểm soát. –

-1

bạn có rất nhiều quá tải - có thể làm bạn hài lòng: (tại sao bạn chọn những cái phức tạp :)?)

thể loại là để lọc các sự kiện trong các sự kiện đăng nhập (mà bạn có thể làm cũng với nguồn attribtue)

enter image description here

sử dụng thẻ thứ nhất hoặc thứ hai.

chỉnh sửa

EventLog.CreateEventSource("MyWebApplication", "Application") ; 
+0

Bạn viết, nhưng viết thể loại là yêu cầu thiết kế trong tình huống của chúng tôi. –

+1

Điều này không trả lời câu hỏi "Cách viết danh mục cho nhật ký sự kiện". – Despertar

+0

@ Despertar bạn nói đúng. đã cập nhật. –

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