Vì vậy, tôi đang cố gắng ghi vào Nhật ký sự kiện Windows bằng cách sử dụng Write-EventLog
. Tôi đã biên soạn một CategoryMessageFile .dll và đã đăng ký nó trong registry.Làm thế nào để hiển thị tên chuỗi của thể loại nhiệm vụ trong sổ ghi sự kiện bằng cách sử dụng Write-EventLog?
Tập lệnh của tôi ghi vào nhật ký sự kiện cho hầu hết các phần, nhưng vấn đề là sự kiện không hiển thị tên danh mục; nó hiển thị id tin nhắn loại liệt kê trong dll.
New-EventLog -LogName Application -Source 'test1' -CategoryResourceFile 'C:\Windows\Microsoft.NET\Framework64\v2.0.50727\test.dll' Write-EventLog -LogName Application -Source 'test1' -EntryType Information -EventId 1 -Message "$($DataSet.Tables[0].Rows[$i][6])" -Category 1
Tôi biết các bản đồ là đúng bởi vì khi tôi chạy
Get-EventLog -LogName Application -Newest 3 | Format-List
Tên loại đúng hiện lên dưới loại cho các sự kiện mà tôi vừa ghi vào nhật ký.
Đây là tệp mc của tôi.
;// Header
;// Categories
MessageIdTypedef=WORD
MessageId=0x1
Language=English
ETLUncategorizedError
.
MessageId=0x2
Language=English
ETLThresholdExceeded
.
MessageId=0x3
Language=English
ETLMalformattedFile
.
MessageId=0x4
Language=English
ETLWebInvocationFailure
.
Vì vậy, làm cách nào để hiển thị tên thay vì số trong nhật ký sự kiện?
Làm việc tồn đọng ở đây 2 năm sau: P Bạn đã giải quyết chưa? Danh mục này có thể nhìn thấy trong PowerShell nhưng không hiển thị trong Trình xem sự kiện (GUI)? Nếu vậy, bạn đã thử khởi động lại Trình xem sự kiện (hoặc máy tính cho vấn đề đó) sau khi bạn đã đăng ký tệp tin thư mục danh mục chưa? "Lưu ý rằng khi bạn đã đăng ký một tệp thông báo danh mục, bạn phải khởi động lại trình xem nhật ký sự kiện để nhận các thay đổi". (Nguồn: http://www.drdobbs.com/customizing-event-log-categories/184405714) –