예제 #1
0
        public void TestGetMonitoringTypesForAgentForCheckSameResultMultipleCalls()
        {
            int agentNr = 1;
            List <MonitoringTypeDataModel> monitoringTypes1 = databaseConnection.GetMonitoringTypesForAgentForCheckFromDatabase(agentNr);

            List <MonitoringTypeDataModel> monitoringTypes2 = databaseConnection.GetMonitoringTypesForAgentForCheckFromDatabase(agentNr);

            if (monitoringTypes1.Count == monitoringTypes2.Count)
            {
                for (int i = 0; i < monitoringTypes1.Count; i++)
                {
                    Assert.AreEqual(monitoringTypes1[i].MonitoringTypeNr, monitoringTypes2[i].MonitoringTypeNr);
                    Assert.AreEqual(monitoringTypes1[i].ObjectID, monitoringTypes2[i].ObjectID);
                    Assert.AreEqual(monitoringTypes1[i].Description, monitoringTypes2[i].Description);
                }
                Assert.IsTrue(true);
            }
            else
            {
                Assert.IsTrue(false);
            }
        }
예제 #2
0
        private void WalkThroughOid(UdpTarget target, DatabaseConnectionManager connection, AgentDataModel agent)
        {
            List <MonitoringTypeDataModel> MonitoringTypeList = connection.GetMonitoringTypesForAgentForCheckFromDatabase(agent.AgentNr);

            if (MonitoringTypeList.Count > 0)
            {
                List <KeyValuePair <string, string> > resultList = new List <KeyValuePair <string, string> >();
                foreach (MonitoringTypeDataModel type in MonitoringTypeList)
                {
                    SNMPWalk walk    = new SNMPWalk(target, type.ObjectID);
                    JObject  results = walk.Walk();
                    resultList.Add(new KeyValuePair <string, string>(type.ObjectID, results.ToString()));
                }
                connection.AddMonitorDataToDatabase(agent.AgentNr, resultList);
                connection.UpdateStatusOfAgent(agent.AgentNr, 1);
            }
        }