diff options
| author | Mirta <mirta@twine-s.com> | 2020-12-30 16:39:52 +0200 |
|---|---|---|
| committer | Mirta <mirta@twine-s.com> | 2020-12-30 16:39:52 +0200 |
| commit | 00a491d93733d4625ad329b2ba8237f445364b3f (patch) | |
| tree | 4b24c6fa78d7648f4bb7cefafa464bb0b063fec4 /Software/Visual_Studio/Tango.Integration/Logging | |
| parent | 124ad4150f80c6846fdee41dbbda9848c105f6e5 (diff) | |
| download | Tango-00a491d9.tar.gz Tango-00a491d9.zip | |
merge
Diffstat (limited to 'Software/Visual_Studio/Tango.Integration/Logging')
| -rw-r--r-- | Software/Visual_Studio/Tango.Integration/Logging/EmbeddedLogFileParser.cs | 60 |
1 files changed, 9 insertions, 51 deletions
diff --git a/Software/Visual_Studio/Tango.Integration/Logging/EmbeddedLogFileParser.cs b/Software/Visual_Studio/Tango.Integration/Logging/EmbeddedLogFileParser.cs index 7e3e45c54..98a3ac543 100644 --- a/Software/Visual_Studio/Tango.Integration/Logging/EmbeddedLogFileParser.cs +++ b/Software/Visual_Studio/Tango.Integration/Logging/EmbeddedLogFileParser.cs @@ -21,7 +21,7 @@ namespace Tango.Integration.Logging FileLogger logger = MachineOperator.EmbeddedLogManager.RegisteredLoggers.FirstOrDefault(x => x.GetType() == typeof(FileLogger)) as FileLogger; String logFile = logger != null ? logger.LogFile : null; - HashSet<string> dateStrings = new HashSet<string>(); + if (Directory.Exists(MachineOperator.EmbeddedLogsFolder)) { foreach (var file in Directory.GetFiles(MachineOperator.EmbeddedLogsFolder, "*.log").Where(x => x != logFile)) @@ -29,20 +29,8 @@ namespace Tango.Integration.Logging try { String dateString = Path.GetFileNameWithoutExtension(file).Replace(MachineOperator.EmbeddedLogsTag + "-", ""); - int indexPos = dateString.IndexOf(FileLogger.FILE_SET_EXTENSION); - int indexOfFile = 0; - if (indexPos > 0) - { - string fileNameIndex = dateString.Substring(indexPos + FileLogger.FILE_SET_EXTENSION.Length); - int.TryParse(fileNameIndex, out indexOfFile); - dateString = dateString.Substring(0, indexPos); - } - if (!dateStrings.Contains(dateString)) - { - dateStrings.Add(dateString); - DateTime date = DateTime.ParseExact(dateString, "dd-MM-yyyy_HH-mm-ss", CultureInfo.InvariantCulture); - logFiles.Add(new LogFile() { DateTime = date, File = file, PartOfSet = indexOfFile > 0, }); - } + DateTime date = DateTime.ParseExact(dateString, "dd-MM-yyyy_HH-mm-ss", CultureInfo.InvariantCulture); + logFiles.Add(new LogFile() { DateTime = date, File = file }); } catch (Exception ex) { @@ -57,33 +45,8 @@ namespace Tango.Integration.Logging public List<EmbeddedLogItem> Parse(LogFile logFile) { List<EmbeddedLogItem> logItems = new List<EmbeddedLogItem>(); - List<LogFile> logFiles = new List<LogFile>(); - FileLogger logger = LogManager.Default.RegisteredLoggers.FirstOrDefault(x => x.GetType() == typeof(FileLogger)) as FileLogger; - if (logFile.PartOfSet) - { - string fileName = Path.GetFileNameWithoutExtension(logFile.File); - string extension = Path.GetExtension(logFile.File); - int indexPos = fileName.IndexOf(FileLogger.FILE_SET_EXTENSION); - if (indexPos > 0) - { - fileName = fileName.Substring(0, indexPos); - } - string[] fileEntries = Directory.GetFiles(FileLogger.DefaultLogsFolder, $"{fileName}*{extension}").Where(x => Path.GetFileName(x).StartsWith(logger.Tag) && x != logger.LogFile).OrderBy(x => x).ToArray(); - foreach (var file in fileEntries) - { - Parse(file, logFile.DateTime, ref logItems); - } - } - else - { - Parse(logFile.File, logFile.DateTime, ref logItems); - } - return logItems; - } - public void Parse(string file, DateTime datetime, ref List<EmbeddedLogItem> logItems) - { - String text = File.ReadAllText(file); + String text = File.ReadAllText(logFile.File); var logs = Regex.Split(text, @"(\[\d{2}:\d{2}:\d{2}.\d{2}\])"); for (int i = 1; i < logs.Length; i += 2) @@ -99,13 +62,13 @@ namespace Tango.Integration.Logging { Category = (PMR.Debugging.DebugLogCategory)Enum.Parse(typeof(PMR.Debugging.DebugLogCategory), entries[1]), FileName = entries[3], - LineNumber = int.Parse(entries[5]), - ModuleId = int.Parse(entries[7]), - Filter = int.Parse(entries[9]), + LineNumber = uint.Parse(entries[5]), + ModuleId = uint.Parse(entries[7]), + Filter = uint.Parse(entries[9]), Message = new String(entries[10].Skip(2).ToArray()) }); - item.TimeStamp = new DateTime(datetime.Year, datetime.Month, datetime.Day, date.Hour, date.Minute, date.Second, date.Millisecond); + item.TimeStamp = new DateTime(logFile.DateTime.Year, logFile.DateTime.Month, logFile.DateTime.Day, date.Hour, date.Minute, date.Second, date.Millisecond); logItems.Add(item); } @@ -114,13 +77,8 @@ namespace Tango.Integration.Logging LogManager.Default.Log(ex, "Could not parse log line: " + logs[i]); } } - } - public List<EmbeddedLogItem> Parse(string file, DateTime fileDate) - { - List<EmbeddedLogItem> logs = new List<EmbeddedLogItem>(); - Parse(file, fileDate, ref logs); - return logs; + return logItems; } } } |
