Esempio n. 1
0
 private void LoadTemplates()
 {
     lvwTemplates.Items.Clear();
     foreach (QuickMonTemplate t in (from t in QuickMonTemplate.GetAllTemplates()
                                     orderby t.Name
                                     select t))
     {
         if (
             cboTypeFilter.SelectedIndex == 5 ||
             (
                 (cboTypeFilter.SelectedIndex == 0 && t.TemplateType == TemplateType.MonitorPack) ||
                 (cboTypeFilter.SelectedIndex == 1 && t.TemplateType == TemplateType.CollectorHost) ||
                 (cboTypeFilter.SelectedIndex == 2 && t.TemplateType == TemplateType.CollectorAgent) ||
                 (cboTypeFilter.SelectedIndex == 3 && t.TemplateType == TemplateType.NotifierHost) ||
                 (cboTypeFilter.SelectedIndex == 4 && t.TemplateType == TemplateType.NotifierAgent)
             )
             )
         {
             ListViewGroup lg = (from ListViewGroup g in lvwTemplates.Groups
                                 where
                                 (g.Header == "Monitor Pack" && t.TemplateType == TemplateType.MonitorPack) ||
                                 (g.Header == "Collector Host" && t.TemplateType == TemplateType.CollectorHost) ||
                                 (g.Header == "Collector Agent" && t.TemplateType == TemplateType.CollectorAgent) ||
                                 (g.Header == "Notifier Host" && t.TemplateType == TemplateType.NotifierHost) ||
                                 (g.Header == "Notifier Agent" && t.TemplateType == TemplateType.NotifierAgent)
                                 select g).FirstOrDefault();
             ListViewItem lvi = new ListViewItem(t.Name);
             lvi.SubItems.Add(t.ForClass);
             lvi.SubItems.Add(t.Description);
             lvi.Group = lg;
             lvi.Tag   = t;
             lvwTemplates.Items.Add(lvi);
         }
     }
 }
Esempio n. 2
0
        private void LoadNotifierHostItems()
        {
            lvwAgentType.Items.Clear();
            lvwAgentType.Groups.Clear();
            ListViewGroup generalGroup = new ListViewGroup("General");

            lvwAgentType.Groups.Add(generalGroup);
            ListViewItem lviDefaultNotifier = new ListViewItem("Default Notifier");

            lviDefaultNotifier.SubItems.Add("Creates a default notifier with 'In Memory' agent");
            lviDefaultNotifier.Group = generalGroup;
            lviDefaultNotifier.Tag   = NotifierHost.FromXml("<notifierHost name=\"Default Notifier\" enabled=\"True\" alertLevel=\"Warning\" detailLevel=\"Detail\" attendedOptionOverride=\"OnlyAttended\"><notifierAgents><notifierAgent name=\"Memory agent\" type=\"QuickMon.Notifiers.InMemoryNotifier\" enabled=\"True\"><config><inMemory maxEntryCount=\"99999\" /></config></notifierAgent></notifierAgents></notifierHost>");
            lvwAgentType.Items.Add(lviDefaultNotifier);

            ListViewGroup templatesGroup = new ListViewGroup("Templates");

            lvwAgentType.Groups.Add(templatesGroup);

            foreach (QuickMonTemplate qt in QuickMonTemplate.GetAllTemplates().Where(t => t.TemplateType == TemplateType.NotifierHost))
            {
                ListViewItem lviTemplateCollector = new ListViewItem(qt.Name);
                lviTemplateCollector.SubItems.Add(qt.Description);
                lviTemplateCollector.Group = templatesGroup;
                lviTemplateCollector.Tag   = qt;
                lvwAgentType.Items.Add(lviTemplateCollector);
            }
        }
Esempio n. 3
0
        private void LoadMonitorPackItems()
        {
            lvwAgentType.Items.Clear();
            lvwAgentType.Groups.Clear();
            ListViewGroup generalGroup = new ListViewGroup("General");

            lvwAgentType.Groups.Add(generalGroup);
            ListViewItem lviEmptyMonitorPack = new ListViewItem("Empty monitor pack");

            lviEmptyMonitorPack.SubItems.Add("Creates a blank monitor pack with no collectors");
            lviEmptyMonitorPack.Group = generalGroup;
            lviEmptyMonitorPack.Tag   = Properties.Resources.BlankTemplateMonitorPack;
            lvwAgentType.Items.Add(lviEmptyMonitorPack);

            ListViewGroup templatesGroup = new ListViewGroup("Templates");

            lvwAgentType.Groups.Add(templatesGroup);
            foreach (QuickMonTemplate qt in QuickMonTemplate.GetAllTemplates().Where(t => t.TemplateType == TemplateType.MonitorPack))
            {
                ListViewItem lviTemplateCollector = new ListViewItem(qt.Name);
                lviTemplateCollector.SubItems.Add(qt.Description);
                lviTemplateCollector.Group = templatesGroup;
                lviTemplateCollector.Tag   = qt;
                lvwAgentType.Items.Add(lviTemplateCollector);
            }
        }
Esempio n. 4
0
        private void LoadCollectorHostItems()
        {
            lvwAgentType.Items.Clear();
            lvwAgentType.Groups.Clear();

            ListViewGroup generalGroup = new ListViewGroup("General");

            lvwAgentType.Groups.Add(generalGroup);
            ListViewItem lviEmptyCollector = new ListViewItem("Folder/Blank collector");

            //lviEmptyCollector.SubItems.Add("Creates a blank collector with no agents");
            //lviEmptyCollector.Group = generalGroup;
            //lviEmptyCollector.Tag = new CollectorHost() { Name = "Folder" };
            //lvwAgentType.Items.Add(lviEmptyCollector);

            //lviEmptyCollector = new ListViewItem("Folder/Blank Collector");
            lviEmptyCollector.SubItems.Add("Creates a blank collector with no agents");
            lviEmptyCollector.Group = generalGroup;
            lviEmptyCollector.Tag   = CollectorHost.FromXml("<collectorHost uniqueId=\"\" dependOnParentId=\"\" name=\"[[FolderName:]]\"><collectorAgents agentCheckSequence=\"All\"></collectorAgents></collectorHost>").Clone(true);
            lvwAgentType.Items.Add(lviEmptyCollector);

            //<collectorHost uniqueId=\"\" dependOnParentId=\"\" name=\"[[FolderName:]]\"><collectorAgents agentCheckSequence="All"></collectorAgents></collectorHost>

            ListViewItem lviPingCollector = new ListViewItem("Ping (ICMP)");

            lviPingCollector.SubItems.Add("Creates a collector with a Ping (ICMP) agent");
            lviPingCollector.Group = generalGroup;
            lviPingCollector.Tag   = CollectorHost.FromXml("<collectorHost uniqueId=\"\" dependOnParentId=\"\" name=\"Ping [[MachineName:localhost]]\"><collectorAgents agentCheckSequence=\"All\"><collectorAgent name=\"Ping [[MachineName:localhost]]\" type=\"QuickMon.Collectors.PingCollector\" enabled=\"True\"><config><entries><entry pingMethod=\"Ping\" address=\"[[MachineName:localhost]]\" maxTimeMS=\"[[maxTimeMS:1000]]\" timeOutMS=\"[[timeOutMS:5000]]\" /></entries></config></collectorAgent></collectorAgents></collectorHost>").Clone(true);
            lvwAgentType.Items.Add(lviPingCollector);

            lviPingCollector = new ListViewItem("Ping (http)");
            lviPingCollector.SubItems.Add("Creates a collector with a Ping (http) agent");
            lviPingCollector.Group = generalGroup;
            lviPingCollector.Tag   = CollectorHost.FromXml("<collectorHost uniqueId=\"\" dependOnParentId=\"\" name=\"Ping [[MachineName:localhost]]\"><collectorAgents agentCheckSequence=\"All\"><collectorAgent name=\"Ping [[MachineName:localhost]]\" type=\"QuickMon.Collectors.PingCollector\" enabled=\"True\"><config><entries><entry pingMethod=\"Http\" address=\"http://[[MachineName:localhost]]\" maxTimeMS=\"[[maxTimeMS:1000]]\" timeOutMS=\"[[timeOutMS:5000]]\" /></entries></config></collectorAgent></collectorAgents></collectorHost>").Clone(true);
            lvwAgentType.Items.Add(lviPingCollector);

            ListViewGroup templatesGroup = new ListViewGroup("Templates");

            lvwAgentType.Groups.Add(templatesGroup);

            foreach (QuickMonTemplate qt in QuickMonTemplate.GetAllTemplates().Where(t => t.TemplateType == TemplateType.CollectorHost))
            {
                ListViewItem lviTemplateCollector = new ListViewItem(qt.Name);
                lviTemplateCollector.SubItems.Add(qt.Description);
                lviTemplateCollector.Group = templatesGroup;
                lviTemplateCollector.Tag   = qt;
                lvwAgentType.Items.Add(lviTemplateCollector);
            }
        }
Esempio n. 5
0
        private void LoadTemplates()
        {
            Text = "Select Template - ";
            switch (FilterTemplatesBy)
            {
            case TemplateType.CollectorHost:
                Text += "Collector Host";
                break;

            case TemplateType.CollectorAgent:
                Text += "Collector Agent";
                break;

            case TemplateType.NotifierHost:
                Text += "Notifier Host";
                break;

            case TemplateType.NotifierAgent:
                Text += "Notifier Agent";
                break;

            default:
                Text += "Monitor pack";
                break;
            }
            lvwTemplates.Items.Clear();
            foreach (QuickMonTemplate template in (from p in QuickMonTemplate.GetAllTemplates()
                                                   where p.TemplateType == FilterTemplatesBy
                                                   orderby p.Name
                                                   select p))
            {
                try
                {
                    ListViewItem lvi = new ListViewItem(template.Name);
                    lvi.ImageIndex = 0;
                    string details = template.Description.Trim().Length == 0 ? template.Config : template.Description;
                    lvi.SubItems.Add(details);
                    lvi.Tag = template;
                    lvwTemplates.Items.Add(lvi);
                }
                catch { }
            }
        }
Esempio n. 6
0
        private void LoadCollectorAgents()
        {
            lvwAgentType.Items.Clear();
            lvwAgentType.Groups.Clear();

            ListViewGroup generalGroup = new ListViewGroup("General");

            lvwAgentType.Groups.Add(generalGroup);

            foreach (string categoryName in (from a in RegisteredAgentCache.Agents
                                             where ((a.IsCollector && selectingCollectorAgents) || (selectingNotifierAgents && a.IsNotifier)) && a.CategoryName != "Test" && a.CategoryName != "General"
                                             group a by a.CategoryName into g
                                             orderby g.Key
                                             select g.Key))
            {
                lvwAgentType.Groups.Add(new ListViewGroup(categoryName));
            }
            ListViewGroup testGroup = new ListViewGroup("Test");

            lvwAgentType.Groups.Add(testGroup);

            ListViewItem lvi;

            foreach (RegisteredAgent ar in (from a in RegisteredAgentCache.Agents
                                            where (selectingCollectorAgents && a.IsCollector) || (selectingNotifierAgents && a.IsNotifier)
                                            orderby a.Name
                                            select a))
            {
                try
                {
                    ListViewGroup agentGroup = (from ListViewGroup gr in lvwAgentType.Groups
                                                where gr.Header.ToLower() == ar.CategoryName.ToLower()
                                                select gr).FirstOrDefault();
                    if (agentGroup == null)
                    {
                        agentGroup = generalGroup;
                    }

                    lvi = new ListViewItem(ar.DisplayName);
                    string details = ar.ClassName;
                    System.Reflection.Assembly a = System.Reflection.Assembly.LoadFrom(ar.AssemblyPath);
                    details += ", Version: " + a.GetName().Version.ToString();
                    details += ", Assembly: " + System.IO.Path.GetFileName(a.Location);

                    if (agentGroup == testGroup)
                    {
                        lvi.ImageIndex = 1;
                    }
                    else
                    {
                        lvi.ImageIndex = 0;
                    }
                    lvi.Group = agentGroup;
                    lvi.SubItems.Add(details);
                    lvi.Tag = ar;
                    lvwAgentType.Items.Add(lvi);
                    if (ar.Name == InitialRegistrationName)
                    {
                        lvi.Selected = true;
                    }
                }
                catch { }
            }

            ListViewGroup templatesGroup = new ListViewGroup("Templates");

            lvwAgentType.Groups.Add(templatesGroup);

            foreach (QuickMonTemplate qt in QuickMonTemplate.GetAllTemplates().Where(t => (selectingCollectorAgents && t.TemplateType == TemplateType.CollectorAgent) || (selectingNotifierAgents && t.TemplateType == TemplateType.NotifierAgent)))
            {
                ListViewItem lviTemplateCollector = new ListViewItem(qt.Name);
                lviTemplateCollector.SubItems.Add(qt.Description);
                lviTemplateCollector.Group = templatesGroup;
                lviTemplateCollector.Tag   = qt;
                lvwAgentType.Items.Add(lviTemplateCollector);
            }
        }