Exemple #1
0
        private static EventLog.EventLevel ConvertLevel(byte level)
        {
            StandardEventLevel standardEventLevel = (StandardEventLevel)level;

            switch (standardEventLevel)
            {
            case StandardEventLevel.LogAlways:
                return(EventLog.EventLevel.LogAlways);

            case StandardEventLevel.Critical:
                return(EventLog.EventLevel.Critical);

            case StandardEventLevel.Error:
                return(EventLog.EventLevel.Error);

            case StandardEventLevel.Warning:
                return(EventLog.EventLevel.Warning);

            case StandardEventLevel.Informational:
                return(EventLog.EventLevel.Informational);

            case StandardEventLevel.Verbose:
                return(EventLog.EventLevel.Verbose);
            }

            throw new ArgumentOutOfRangeException("level");
        }
Exemple #2
0
        private static string event_level(StandardEventLevel type)
        {
            switch (type)
            {
            case StandardEventLevel.LogAlways:
                return("DEBUG");

            case StandardEventLevel.Critical:
                return("INFO");

            case StandardEventLevel.Error:
                return("ERROR");

            case StandardEventLevel.Warning:
                return("WARN");

            case StandardEventLevel.Informational:
                return("INFO");

            case StandardEventLevel.Verbose:
                return("VERB");

            default:
                return("");
            }
        }
Exemple #3
0
        public EventRecord GetLog(string logName, string source, StandardEventLevel eventLevel)
        {
            if (!EventLog.SourceExists(source))
            {
                return(new EventRecord {
                    Source = string.Format(Constants.SourceDoesNotExist, source)
                });
            }

            var dt = DateTime.Now.AddHours(Constants.TimeIntervalForLogsToCheck);
            var formattedDateTime = string.Format(DateTimeFormatLogViewer,
                                                  dt.Year,
                                                  dt.Month,
                                                  dt.Day,
                                                  dt.Hour,
                                                  dt.Minute,
                                                  dt.Second);

            // Note: The query result does not work correctly. It shows some records less than FormattedDateTime as well.
            var query    = string.Format(QueryFormat, formattedDateTime);
            var logQuery = new EventLogQuery(logName, PathType.LogName, query);

            var reader = new EventLogReader(logQuery);

            var recordList = new List <EventRecord>();

            System.Diagnostics.Eventing.Reader.EventRecord rec;

            while ((rec = reader.ReadEvent()) != null)
            {
                if (rec.Level == (byte)eventLevel && rec.ProviderName == source.Trim() && rec.TimeCreated > DateTime.Now.AddHours(Constants.TimeIntervalForLogsToCheck))
                {
                    recordList.Add(new EventRecord(rec));
                }
            }

            return(recordList.OrderByDescending(r => r.TimeCreated).FirstOrDefault());
        }
Exemple #4
0
 private static string event_level(StandardEventLevel type) {
     switch (type) {
     case StandardEventLevel.LogAlways:
         return "DEBUG";
     case StandardEventLevel.Critical:
         return "INFO";
     case StandardEventLevel.Error:
         return "ERROR";
     case StandardEventLevel.Warning:
         return "WARN";
     case StandardEventLevel.Informational:
         return "INFO";
     case StandardEventLevel.Verbose:
         return "VERB";
     default:
         return "";
     }
 }