private void EditEventLogEntry_Load(object sender, EventArgs e) { pictureBoxSecWarning.Visible = !IsAdmin(); lblSecWarning.Visible = !IsAdmin(); if (SelectedEventLogEntry == null) { SelectedEventLogEntry = new QMEventLogEntry(); SelectedEventLogEntry.Computer = System.Net.Dns.GetHostName(); } }
private void cmdOK_Click(object sender, EventArgs e) { if (CheckOKEnabled()) { SelectedEventLogConfig = new EventLogConfig(); foreach (ListViewItem lvi in lvwEntries.Items) { QMEventLogEntry eventLogEntry = (QMEventLogEntry)lvi.Tag; SelectedEventLogConfig.Entries.Add(eventLogEntry); } DialogResult = System.Windows.Forms.DialogResult.OK; Close(); } }
public void ReadConfiguration(XmlDocument config) { XmlElement root = config.DocumentElement; Entries.Clear(); foreach (XmlElement logNode in root.SelectNodes("eventlogs/log")) { QMEventLogEntry eventLogEntry = new QMEventLogEntry(); eventLogEntry.Computer = logNode.ReadXmlElementAttr("computer", ""); eventLogEntry.EventLog = logNode.ReadXmlElementAttr("eventLog", ""); eventLogEntry.TypeInfo = bool.Parse(logNode.ReadXmlElementAttr("typeInfo", "False")); eventLogEntry.TypeWarn = bool.Parse(logNode.ReadXmlElementAttr("typeWarn", "True")); eventLogEntry.TypeErr = bool.Parse(logNode.ReadXmlElementAttr("typeErr", "True")); eventLogEntry.ContainsText = bool.Parse(logNode.ReadXmlElementAttr("containsText", "False")); eventLogEntry.TextFilter = logNode.ReadXmlElementAttr("textFilter", ""); eventLogEntry.WithInLastXEntries = int.Parse(logNode.ReadXmlElementAttr("withInLastXEntries", "100")); eventLogEntry.WithInLastXMinutes = int.Parse(logNode.ReadXmlElementAttr("withInLastXMinutes", "60")); eventLogEntry.WarningValue = int.Parse(logNode.ReadXmlElementAttr("warningValue", "1")); eventLogEntry.ErrorValue = int.Parse(logNode.ReadXmlElementAttr("errorValue", "10")); eventLogEntry.Sources = new List <string>(); foreach (XmlElement sourceNode in logNode.SelectNodes("sources/source")) { eventLogEntry.Sources.Add(sourceNode.InnerText); } foreach (XmlElement eventIdNode in logNode.SelectNodes("eventIds/eventId")) { if (eventIdNode.InnerText.IsInteger()) { eventLogEntry.EventIds.Add(int.Parse(eventIdNode.InnerText)); } } Entries.Add(eventLogEntry); } }
private void RefreshList() { if (busyRefreshing) { return; } busyRefreshing = true; foreach (ListViewItem lvi in lvwEntries.Items) { try { if (lvi.Tag is QMEventLogEntry) { QMEventLogEntry entry = (QMEventLogEntry)lvi.Tag; int count = entry.GetMatchingEventLogCount(); if (count >= entry.ErrorValue) { lvi.ImageIndex = 3; } else if (count >= entry.WarningValue) { lvi.ImageIndex = 2; } else { lvi.ImageIndex = 1; } lvi.SubItems[2].Text = count.ToString(); } Application.DoEvents(); } catch { } } busyRefreshing = false; RefreshSubList(); }
private void RefreshSubList() { if (busyRefreshing) { return; } busyRefreshing = true; toolStripStatusLabelDetails.Text = "Loading items..."; Application.DoEvents(); Cursor.Current = Cursors.WaitCursor; lvwDetails.Items.Clear(); if (lvwEntries.SelectedItems.Count > 0) { List <ListViewItem> listItems = new List <ListViewItem>(); try { foreach (ListViewItem lviEntry in lvwEntries.SelectedItems) { QMEventLogEntry entry = (QMEventLogEntry)lviEntry.Tag; foreach (EventLogEntryEx ev in entry.LastEntries) // entry.GetMatchingEventLogEntries()) { ListViewItem lvi = new ListViewItem(entry.ComputerLogName); if (ev.EntryType == EventLogEntryType.Information) { lvi.ImageIndex = 0; } else if (ev.EntryType == EventLogEntryType.Warning) { lvi.ImageIndex = 1; } else if (ev.EntryType == EventLogEntryType.Error) { lvi.ImageIndex = 2; } else if (ev.EntryType == EventLogEntryType.FailureAudit) { lvi.ImageIndex = 3; } else if (ev.EntryType == EventLogEntryType.SuccessAudit) { lvi.ImageIndex = 4; } else { lvi.ImageIndex = 1; } lvi.SubItems.Add(ev.TimeGenerated.ToString("yyyy-MM-dd")); lvi.SubItems.Add(ev.TimeGenerated.ToString("HH:mm:ss")); lvi.SubItems.Add(ev.Source); lvi.SubItems.Add(ev.EventId.ToString()); lvi.SubItems.Add(ev.MessageSummary); lvi.Tag = ev; listItems.Add(lvi); } } lvwDetails.Items.AddRange(listItems.ToArray()); } catch (Exception ex) { ListViewItem lvi = new ListViewItem("Error"); lvi.SubItems.Add("Error"); lvi.SubItems.Add("Error"); lvi.SubItems.Add("Error"); lvi.SubItems.Add(ex.Message); listItems.Add(lvi); } } Cursor.Current = Cursors.Default; toolStripStatusLabelDetails.Text = string.Format("{0} item(s) found, Last update {1}", lvwDetails.Items.Count, DateTime.Now.ToString("yyyy-mm-dd HH:mm:ss")); busyRefreshing = false; }