Monitoring discovery agent status

As the discovery progresses, different discovery agents are called to retrieve device and connectivity data from discovered devices. This data will later be used to build the network topology. You can use the Discovery Status GUI to track overall and detailed status of the discovery agents.

About this task

Discovery agents run in the following order. Let's assume that the Ping finder has just verified the existence of the device 10.40.230.1, in our Class B subnet.
  • After the Ping finder has verified the existence of IP address 10.40.230.1, the Details agent is called to retrieve basic information from this device.
  • Once the Details agent has retrieved information from the IP address 10.40.230.1, the AssocAddress agent is called to retrieve all the IP addresses associated with 10.40.230.1. If the associated IP addresses have not yet been discovered and are in scope, then the IP address is passed to the Ping finder so that the device existence can be verified.
  • Meanwhile other agents are called to interrogate the IP address 10.40.230.1. For example, this IP address is a router, so the IpRoutingTable agent is called to retrieve information from the routing table of router 10.40.230.1 and to feed back connected devices to the Ping finder. More precisely, 10.40.230.1 is a Cisco router within a BGP network, so the CiscoBGPTelnet agent is called to retrieve BGP-related data from the device.
This process is repeated for all devices until all relevant data has been retrieved from the devices in scope.
Note: The Details agent and the AssocAddress agent are the only discovery agents that interrogate every device in scope. The IP address counts for these agents are therefore always higher than those of the other agents.
As you monitor discovery agent progress, some of the key questions to ask are the following?
  • Are all agents running okay? Have any agents crashed? If so, which IP address might have caused the agent to crash.
  • Which agents are taking a long time to complete and which IP address appears to be causing this delay?
  • Which agents are holding up a discovery phase and preventing the phase from completing? For example, which agents are holding up the Interrogating Devices phase?
  • How many IP addresses does a particular agent, for example, the Details agent, still have to work on? How far is the agent through its work?
  • Which IP addresses were found late in the discovery?
In this task we will use the Discovery Status GUI Agents Status table to answer these questions.

Procedure

  1. In the Discovery Status GUI, click Agents Status.
    The Agents Status section of the GUI shows the discovery agents that are currently running and provides status information on each agent. Agents are sorted in order of state, and for each state, are sorted alphabetically.
  2. Check that all agents are running okay.
    1. Check the State column of the Agents Status table. If any of the agents have terminated unexpectedly, then that agent will appear at the top of the list.
      The default sort order is descending order of state. Each agent state is assigned a number as follows:
      Table 1. Agent states
      State Value Icon Description
      Died 5 Discovery agent died The agent has terminated unexpectedly. This is a potential discovery problem.
      Finished 4 Finished The agent is still running but has finished processing of all the entities in its queue. The agent is still available to process any further agents placed in the queue.
      Running 3 Running The agent is currently processing entities.
      Starting 2 Running The agent is starting up.
      Not running 1 Stopped or disabled The Agent is not running.
      Let's assume that the CiscoSwitchTelnet agent has terminated unexpectedly.
    2. Click the CiscoSwitchTelnet agent cell in the Agents Status table.
      The IP Address Status table, which is the table below the Agents Status table, now displays all IP addresses for this agent.
    3. Set the radio button above the table to All.
      This ensures that the table shows all IP addresses for this agent, including IP addresses that have been processed by this agent, that are currently being processed, and that are queued for processing by the agent.
    4. Sort the IP Address Status by Return Time.
      Table rows with empty Return Time cells move to the top of the table. Look for IP addresses where the row has a value in the Despatch Time cell but the Return Time cell is empty. These IP addresses might have caused the agent to terminate unexpectedly.
      Note: Further investigation is required to determine why this IP address caused the agent to crash.
  3. Focus on an agent that is taking a long time to complete and to determine which IP address might be causing this delay. Let's assume that the IpForwardingTable agent is taking a long time to complete.
    1. Click the IpForwardingTable agent cell in the Agents Status table.
      The IP Address Status table, which is the table below the Agents Status table, now displays all IP addresses for this agent.
    2. Set the radio button above the table to All.
      This ensures that the table shows IP addresses that have been processed by this agent and IP addresses that are queued for processing by the agent.
    3. Sort the IP Address Status by Return Time.
      Table rows with empty Return Time cells move to the top of the table. Look for IP addresses where the row has a value in the Despatch Time cell but the Return Time cell is empty. These IP are still being worked on by the agent and might be causing the agent to take a long time to complete.
  4. Determine which agents are holding up a discovery phase; for example, which agents are holding up the Interrogating Devices phase.
    1. From the Filter Agents by Phase list just above the Agents Status table, select Interrogating Devices.
      The Agents Status table now shows only the agents that complete in the Interrogating Devices phase.
    2. Sort the Agents Status table by ascending order of State.
      This brings the running agents to the top of the table, and enables you to see which agents are still running.
    3. Sort the Agents Status table by descending order of state of Outstanding IP Addresses.
      This brings the agents that are still processing IP addresses to the top of the table, with the agents that have the most IP addresses to process at the very top.
  5. Determine how far an agent, let's say the Details agent, is through its work.
    1. Sort the Agents Status table by alphabetical order of Agent.
    2. Find the Details agent.
    3. In the Details agent row record the values for Outstanding IP Addresses and Total IP Addresses.
      You can determine a percentage of work complete using the following formula.

      Percentage work complete for an agent = (Outstanding IP Addresses / Total IP Addresses) * 100

  6. Determine which IP addresses were found late in the discovery.
    1. Sort the Agents Status table by alphabetical order of Agent.
    2. Find the Details agent.
    3. Click the Details agent cell in the Agents Status table.
      The IP Address Status table now displays all IP addresses queued for the Details agent. These are the IP addresses that are in the agents despatch queue; however the agent has not yet started work on these devices.
    4. Sort the IP Address Status table by descending order of Despatch Time.
      In general, the later the agent was found during the discovery, the later its despatch time to the Details agent. This means that the agents that now appear at the top of the IP Address Status table were found latest during the discovery.

Results

You have now used the Agents Status and IP Address Status tables within the Discovery Status GUI to monitor the status of discovery agents. In particular, you have used the tables to find answers to the following queries:
  • Are all agents running okay? Have any agents crashed? If so, which IP address might have caused the agent to crash.
  • Which agents are taking a long time to complete and which IP address appears to be causing this delay?
  • Which agents are holding up a discovery phase and preventing the phase from completing? For example, which agents are holding up the Interrogating Devices phase?
  • How many IP addresses does a particular agent, for example, the Details agent, still have to work on? How far is the agent through its work?
  • Which IP addresses were found late in the discovery?