系統日誌能夠幫助咱們分析操做系統的安全與否,也能夠幫助咱們將一些很差調試的信息顯示出來。安全
C#操做系統日誌主要是經過EventLog類來實現的。操作系統
一 圖解調試
打開事件查看器,其中與EventLog類對應的元素能夠在下圖日誌
二 寫日誌blog
設置EventLog的Log屬性就能夠將日誌分到不一樣的類別中。事件
System.Diagnostics.EventLog eventLog = new System.Diagnostics.EventLog("LogName")或者文檔
EventLog e = new EventLog();
e.Log = "LogName";string
這兩個語句均可以在列表中添加一個名稱爲LogName的日誌。it
日誌級別對應着EventLogEntryType枚舉。io
日誌的源表示此條記錄是從哪一個地方來的,通常將日誌的源設置成本身的程序名稱就能夠了。
EventLog.CreateEventSource("eventLogSource", "LogName");
上面的語句能夠新建一個日誌源,可是隻有在真正插入日誌記錄以前,日誌的源纔會建立。
eventLog.WriteEntry("日誌信息!",EventLogEntryType.Error); 能夠插入一條日誌記錄,有幾種重載,能夠查看相應的幫助文檔。
三 讀日誌
讀日誌記錄主要是經過獲取EventLog實例的Entries屬性來實現的。
string[] logTypes = new string[] { "Application", "Security", "System" }; foreach (string t in logTypes) { EventLog e = new EventLog(); e.Log = t; foreach (EventLogEntry l in e.Entries) { if (l.EntryType == EventLogEntryType.Error) { Console.WriteLine(l.Message); } } }
讀取系統日誌的記錄之後能夠經過自定義的規則進行日誌分析。
四 附加
日誌文件在計算機攻防中是很重要的一部分,能夠經過修改日誌文件的默認目錄,修改日誌文件的操做權限來防止日誌文件的清除行爲。