private void AddMessage(LogMessage log) { TreeNode node = new TreeNode(); node.Tag = log; node.Text = log.ToString(); node.ToolTipText = node.Text; TreeNode timestampNode = node.Nodes.Add(string.Format("Timestamp: {0}", log.Timestamp)); timestampNode.ToolTipText = timestampNode.Text; TreeNode idNode = node.Nodes.Add(string.Format("MessageID: {0}", log.MessageID)); idNode.ToolTipText = idNode.Text; TreeNode typeNode = node.Nodes.Add(string.Format("MessageType: {0}", log.MessageType)); typeNode.ToolTipText = typeNode.Text; TreeNode messageNode = node.Nodes.Add(string.Format("Message: {0}", (log.Message!= null)?log.Message.Trim():"")); messageNode.ToolTipText = messageNode.Text; treeView1.Nodes.Add(node); }
private void ParseTimeStamp(LogMessage message, string line) { line = line.Replace("=INFO REPORT==== ", ""); line = line.Replace("===", ""); line = line.Trim(); message.Timestamp = line; }
private void ParseLogFile(string file) { TextReader a = new StreamReader(file); bool msgStart = false; LogMessage current = new LogMessage(); string line = null; int messageMax = int.Parse(textBox3.Text); int minPageMessage = (messagePage) * messageMax; while((line = a.ReadLine()) != null) { if (currentMessageCount == messageMax) { break; } if (line.Trim().Length < 1) { msgStart = false; continue; } if (line.Trim().StartsWith("=")) { msgStart = true; processedMessages++; if (processedMessages < minPageMessage) { msgStart = false; continue; } if (current.Timestamp != null) { AddMessage(current); currentMessageCount++; } current = new LogMessage(); ParseTimeStamp(current, line); continue; } if (line.Trim().StartsWith("D") || line.Trim().StartsWith("I")) { int start = line.IndexOf("("); int end = line.IndexOf(")"); string id = line.Substring(start, end - start); current.MessageID = id; line = line.Substring(end); Tuple<bool, string> tuple = GetMessageType(line); current.MessageType = tuple.Item2; if (!tuple.Item1) { continue; } else { line = line.Substring(line.IndexOf(tuple.Item2) + tuple.Item2.Length); } } current.Message = current.Message + line; } UpdateToolStrips(); }