diff options
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Logging/Parsing/EmbeddedLogFileParser.cs')
| -rw-r--r-- | Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Logging/Parsing/EmbeddedLogFileParser.cs | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Logging/Parsing/EmbeddedLogFileParser.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Logging/Parsing/EmbeddedLogFileParser.cs deleted file mode 100644 index 50c9d7532..000000000 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Logging/Parsing/EmbeddedLogFileParser.cs +++ /dev/null @@ -1,84 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Text; -using System.Text.RegularExpressions; -using System.Threading.Tasks; -using Tango.Integration.Operation; -using Tango.Logging; -using Tango.Settings; - -namespace Tango.MachineStudio.Logging.Parsing -{ - public class EmbeddedLogFileParser : ILogFileParser<EmbeddedLogItem> - { - public List<LogFile> GetLogFiles() - { - List<LogFile> logFiles = new List<LogFile>(); - - FileLogger logger = MachineOperator.EmbeddedLogManager.RegisteredLoggers.FirstOrDefault(x => x.GetType() == typeof(FileLogger)) as FileLogger; - - String logFile = logger != null ? logger.LogFile : null; - - if (Directory.Exists(MachineOperator.EmbeddedLogsFolder)) - { - foreach (var file in Directory.GetFiles(MachineOperator.EmbeddedLogsFolder, "*.log").Where(x => x != logFile)) - { - try - { - String dateString = Path.GetFileNameWithoutExtension(file).Replace(MachineOperator.EmbeddedLogsTag + "-", ""); - DateTime date = DateTime.ParseExact(dateString, "dd-MM-yyyy_HH-mm-ss", CultureInfo.InvariantCulture); - logFiles.Add(new LogFile() { DateTime = date, File = file }); - } - catch (Exception ex) - { - LogManager.Default.Log(ex, $"Could not load embedded log file {Path.GetFileName(file)}"); - } - } - } - - return logFiles; - } - - public List<EmbeddedLogItem> Parse(LogFile logFile) - { - List<EmbeddedLogItem> logItems = new List<EmbeddedLogItem>(); - - 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) - { - try - { - DateTime date = DateTime.ParseExact(logs[i].Replace("[", "").Replace("]", ""), "HH:mm:ss.ff", CultureInfo.InvariantCulture); - String rest = logs[i + 1]; - - var entries = Regex.Split(rest, @"\[(.*?)\]"); - - EmbeddedLogItem item = new EmbeddedLogItem(new PMR.Debugging.StartDebugLogResponse() - { - Category = (PMR.Debugging.DebugLogCategory)Enum.Parse(typeof(PMR.Debugging.DebugLogCategory), entries[1]), - FileName = entries[3], - 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(logFile.DateTime.Year, logFile.DateTime.Month, logFile.DateTime.Day, date.Hour, date.Minute, date.Second, date.Millisecond); - - logItems.Add(item); - } - catch (Exception ex) - { - LogManager.Default.Log(ex, "Could not parse log line: " + logs[i]); - } - } - - return logItems; - } - } -} |
