private void Iterate(ILogFileReader reader)
 {
     foreach (var logEvent in reader.GetEventIterator())
     {
         Console.WriteLine(logEvent.Category);
     }
 }
Exemple #2
0
 private void Iterate(ILogFileReader reader)
 {
     foreach (var logEvent in reader.GetEventIterator())
     {
         Console.WriteLine(logEvent.Category);
     }
 }
        private static void Do(ILogFileReader w)
        {
            bool keepAlive = true;
            Thread workerThread = new Thread(w.Init);
            Console.CancelKeyPress += (o, e) => { w.Dispose(); keepAlive = false; };
            workerThread.Start();
            while (keepAlive) ;

            workerThread.Join();
        }
Exemple #4
0
        /// <summary>
        /// Read multiple log files and pair each entry with its timestamp.
        /// </summary>
        /// <param name="paths">The paths to the log files to read.</param>
        /// <param name="headers">Headers from the first log file.</param>
        /// <returns>
        /// Returns all entries from the log files with their timestamps, sorted in ascending order.
        /// Also outputs the headers of the first log file.
        /// </returns>
        public IEnumerable <(DateTime dateTime, string entry)> Read(ICollection <string> paths, out ICollection <string> headers)
        {
            var lines = new ConcurrentBag <(DateTime dateTime, string entry)>();

            Parallel.ForEach(paths, path =>
            {
                ILogFileReader entryEnumerator = GetLogFileReader(path);
                foreach (string entry in entryEnumerator.GetEntries())
                {
                    lines.Add((ExtractDateTime(entry), entry));
                }
        private void Initialize(CliArguments arguments)
        {
            IEventParser definitions = new JsonEventParser(arguments.Definitions);
            reader = new SimpleLogReader(arguments.Logfile) { EventDefinition = definitions };

            switch (arguments.Format)
            {
                case "stdout":
                    generator = new ConsolePrinter();
                    break;
                case "html":
                    this.InitializeHtmlReportGenerator(arguments);
                    break;
                default:
                    generator = new ConsolePrinter();
                    break;
            }
        }
Exemple #6
0
        private void Initialize(CliArguments arguments)
        {
            IEventParser definitions = new JsonEventParser(arguments.Definitions);

            reader = new SimpleLogReader(arguments.Logfile)
            {
                EventDefinition = definitions
            };

            switch (arguments.Format)
            {
            case "stdout":
                generator = new ConsolePrinter();
                break;

            case "html":
                this.InitializeHtmlReportGenerator(arguments);
                break;

            default:
                generator = new ConsolePrinter();
                break;
            }
        }
Exemple #7
0
 public Processor(ILogFileReader reader, ILogEventDbImporter importer)
 {
     _reader   = reader;
     _importer = importer;
 }