C#操作系统日志

    系统日志可以帮助我们分析操作系统的安全与否,也可以帮助我们将一些不好调试的信息显示出来。

    C#操作系统日志主要是通过EventLog类来实现的。

一 图解

    打开事件查看器,其中与EventLog类对应的元素可以在下图

二 写日志

    设置EventLog的Log属性就可以将日志分到不同的类别中。

    System.Diagnostics.EventLog eventLog = new System.Diagnostics.EventLog("LogName")或者

     EventLog e = new EventLog();
     e.Log = "LogName";

     这两个语句都可以在列表中添加一个名称为LogName的日志。

    

    日志级别对应着EventLogEntryType枚举。

 

    日志的源表示此条记录是从哪个地方来的,一般将日志的源设置成自己的程序名称就可以了。

    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);
                    }
                }
            }

    读取系统日志的记录以后可以通过自定义的规则进行日志分析。

四 附加

     日志文件在计算机攻防中是很重要的一部分,可以通过修改日志文件的默认目录,修改日志文件的操作权限来防止日志文件的清除行为。

 

 

 

   

 

 

   

posted @ 2013-11-20 17:28  高宝建  阅读(7064)  评论(0编辑  收藏  举报