C#如何查看/寫(xiě)入日志到Windows事件查看器
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
Windows事件日志 Windows 操作系統(tǒng)將與計(jì)算機(jī)的系統(tǒng)性能、應(yīng)用程序和安全方面相關(guān)的每個(gè)事件記錄在 C:\WINDOWS\system32\winevt 的日志中。 事件查看器從這些原始事件日志中讀取信息,然后以可讀格式呈現(xiàn)信息。 打開(kāi)Windows事件查看器的方法: 1、運(yùn)行輸入eventvwr 2、Windows+X打開(kāi)的超級(jí)菜單中選擇事件查看器。 ![]() 3、桌面計(jì)算機(jī)圖標(biāo)右鍵選擇【管理】,在計(jì)算機(jī)管理中打開(kāi)【事件查看器】 事件查看器打開(kāi)后顯示如下: ![]() 有三個(gè)默認(rèn)事件日志:應(yīng)用程序、系統(tǒng)和安全。 安全日志(只讀的)。 注意:事件是跟注冊(cè)表關(guān)聯(lián)起來(lái)的,所以推薦以管理員權(quán)限運(yùn)行,否則有些類(lèi)別下的日志無(wú)法讀取/寫(xiě)入/刪除。 像平常我們開(kāi)發(fā)的程序如果想更方便的查找錯(cuò)誤,除了本地日志外,還可以將日志寫(xiě)入到Windows事件日志中的【應(yīng)用程序和服務(wù)日志】類(lèi)別下,可以方便我們快速查找問(wèn)題。 EventLog類(lèi)在C#中操作Windows事件日志主要使用EventLog類(lèi),EventLog類(lèi)內(nèi)部使用了ReadEventLogW/ReportEventW等win32 api函數(shù)。 在.Net Framework中,直接使用System.Diagnostics.EventLog類(lèi)即可, 在.NET Core項(xiàng)目中,需要引用System.Diagnostics.EventLog包 EventLog類(lèi)提供了實(shí)例化版本的方法和靜態(tài)方法兩種,類(lèi)似FileInfo和FIle類(lèi)。 本文以EventLog類(lèi)的靜態(tài)方法進(jìn)行演示。 獲取日志名字
運(yùn)行輸出如下 ![]() 獲取日志下的單個(gè)記錄這里我們以Visual Studio日志為例,輸出Visual Studio日志下的所有記錄。
運(yùn)行結(jié)果如下: ![]() 創(chuàng)建日志寫(xiě)入記錄到系統(tǒng)日志下這里以【應(yīng)用程序】日志為例,操作如下:
運(yùn)行后到事件查看器查看寫(xiě)入的日志 ![]() 寫(xiě)入記錄到自定義日志類(lèi)別下
運(yùn)行后,可以看到增加了一個(gè)MyLog日志,并增加了一條類(lèi)型為警告的記錄 ![]() 清除日志下的所有記錄
刪除日志
示例代碼 閱讀原文:原文鏈接 該文章在 2025/6/23 14:18:30 編輯過(guò) |
關(guān)鍵字查詢(xún)
相關(guān)文章
正在查詢(xún)... |