Discovery agent definition file keywords
Discovery agent definition file keywords are used to define the operation of discovery agents.
DiscoAgentClass
The DiscoAgentClass
keyword
specifies the basic type of agent. The following table identifies
the most commonly used values:
Value | Description |
---|---|
0 | Specifies an IP type agent. |
1 | Specifies a switch type agent. |
2 | Specifies a hub type agent. |
3 | Specifies an ATM device type agent. |
4 | Specifies an FDDI type agent. |
5 | Specifies a PVC type agent. |
6 | Specifies a frame relay type agent. |
8 | Specifies a NAT gateway agent. |
The following example shows a DiscoAgentClass
keyword
set to a frame relay type agent. Frame relay type agents typically
discover Frame Relay interfaces and connections between two points
on Frame Relay networks that incorporate specific network devices,
for example, CISCO devices.
DiscoCompiledAgent
{
.
.
.
DiscoAgentClass( 6 );
.
.
.
}
DiscoAgentClassEnabledByDefault
The DiscoAgentClassEnabledByDefault
keyword
specifies whether the agent is enabled by default for full discoveries.
Specify one of the following values:
Value | Description |
---|---|
0 | Specifies that the agent is not enabled by default for full discoveries. |
1 | Specifies that the agent is enabled by default for full discoveries. |
The following example shows a DiscoAgentClassEnabledByDefault
keyword
set to enable a frame relay type agent by default for full discoveries.
DiscoCompiledAgent
{
.
.
.
DiscoAgentClass( 6 );
.
.
.
DiscoAgentEnabledByDefault( 1 );
}
DiscoAgentClassEnabledByDefaultOnPartial
The DiscoAgentClassEnabledByDefaultOnPartial
keyword
specifies whether the agent is enabled by default for partial discoveries.
Specify one of the following values:
Value | Description |
---|---|
0 | Specifies that the agent is not enabled by default for partial discoveries. |
1 | Specifies that the agent is enabled by default for partial discoveries. |
The following example shows a DiscoAgentClassEnabledByDefaultOnPartial
keyword
set to enable a frame relay type agent by default for partial discoveries.
DiscoCompiledAgent
{
.
.
.
DiscoAgentClass( 6 );
.
.
.
DiscoAgentEnabledByDefaultOnPartial( 1 );
DiscoAgentEnabledByDefault( 1 );
}
DiscoAgentIsIndirect
A direct agent returns relationship data about objects that it is directly connected to at the layer it deals with. An indirect agent returns relationship data about objects it is indirectly connected to. The most common indirect agents are switch agents. The remote neighbor records for indirect agents relate to devices that can be reached from a specific port, not from devices to which they are directly connected. The relationship data from indirect agents is required to determine which remote neighbor records of a device need to be rediscovered when the device changes.
The DiscoAgentIsIndirect
keyword
specifies whether the agent is an indirect agent that returns relationship
data about objects it is indirectly connected to. Specify one of the
following values:
Value | Description |
---|---|
0 | Specifies that the agent is a direct agent. |
1 | Specifies that the agent is an indirect agent. |
The following example shows a DiscoAgentIsIndirect
keyword
set to specify that a frame relay type agent is a direct agent.
DiscoCompiledAgent
{
.
.
.
DiscoAgentGUILocked( 0 );
DiscoAgentClass( 6 );
DiscoAgentIsIndirect( 0 );
.
.
.
DiscoAgentEnabledByDefaultOnPartial( 1 );
DiscoAgentEnabledByDefault( 1 );
}
DiscoAgentCompanionAgents
The DiscoAgentCompanionAgents
keyword
is used to display in the GUI the agent or agents that this agent
should execute with.
The following example shows a DiscoAgentCompanionAgents
keyword
that displays in the GUI the agent (ArpCache.agnt
)
that should execute with the Centillion Networks agent.
DiscoCompiledAgent
{
.
.
.
-- This agent examines all devices originally made by Centillion
-- Networks (enterprise OID 1.3.6.1.4.1.930), to see if it can
-- discover them.
.
.
.
DiscoAgentCompanionAgents( "ArpCache" );
.
.
.
}
DiscoAgentCompletionPhase
The DiscoAgentCompletionPhase
keyword
specifies during which of the discovery phases the specified agent
should complete executing. Specify one of the following values:
Value | Description |
---|---|
1 | Specifies that the agent should complete execution during discovery phase 1. |
2 | Specifies that the agent should complete execution during discovery phase 2. |
3 | Specifies that the agent should complete execution during discovery phase 3. |
The following example shows a DiscoAgentCompletionPhase
keyword
set to enable a frame relay type agent to complete execution during
discovery phase 1.
DiscoCompiledAgent
{
.
.
.
DiscoAgentCompletionPhase( 1 );
.
.
.
DiscoAgentEnabledByDefaultOnPartial( 1 );
DiscoAgentEnabledByDefault( 1 );
}
DiscoAgentConflictingAgents
The DiscoAgentConflictingAgents
keyword
is used to display in the GUI the agent or agents that this agent
should not execute with.
The following example shows a DiscoAgentConflictingAgents
keyword
that displays in the GUI the agents (IpRoutingTable.agnt
and IpForwardingTable.agnt
)
that should not execute with the IP backup routes agent.
DiscoCompiledAgent
{
.
.
.
-- This agent examines every device with SNMP access to see if it
-- can discover it.
.
.
DiscoAgentConflictingAgents( "IpRoutingTable","IpForwardingTable" );
.
.
.
}
DiscoAgentDescription
The DiscoAgentDescription
keyword
specifies a description of the agent that is displayed in the GUI.
The
following example shows a DiscoAgentDescription
keyword
that specifies a description to display in the GUI for a frame relay
type agent. The description makes use of HTML coding.
DiscoCompiledAgent
{
.
.
.
DiscoAgentDescription("
<b>Agent Name :</b> CiscoFrameRelay<br>
<br>
<b>Agent Type :</b> Layer 3<br>
<br>
<b>Agent Prerequisites :</b> SNMP helper configuration for associated devices.<br>
<br>
<b>Operation :</b><br>
Discovers Frame Relay interfaces and connections between two points on Frame Relay
networks that incorporate Cisco devices. If you need to add DLCI information to the
interfaces of Frame Relay devices, then run Frame Relay agents in conjunction with
the IP layer agents.<br>
<br>
");
.
.
.
}
DiscoAgentMinCertifiedDeviceOS
The DiscoAgentMinCertifiedDeviceOS
keyword
specifies a device operating system specific filter. This filter can
be configured to run the specified agent against specific releases
of a device operating system.
The following example shows a DiscoAgentMinCertifiedDeviceOS
keyword
that specifies a device operating system specific filter for an agent
that discovers MPLS VRFs, VPNs, and label switching information from
CISCO routers. This device operating specific filter configures the
agent to run against the following CISCO devices and associated operating
system releases:
m_ObjectId
— Specifies the CISCO devices (OID1.3.6.1.4.1.9
) that the agent attempts to discover.m_OSVersion
— Specifies the CISCO device operating system filter that configures the agent to run against the following device operating system versions:- 12.0 releases of 12.0(27) or later which are not experimental
- 12.2 releases of 12.2(19) or later which are not experimental
- 12.3 releases of 12.3(18) or later which are not experimental
- 12.4 releases
DiscoCompiledAgent
{
.
.
.
DiscoAgentMinCertifiedDeviceOS
(
"(
m_ObjectId LIKE '1\.3\.6\.1\.4\.1\.9\.',
m_OSVersion >= '12.0(27)' AND m_OSVersion < '12.1' AND m_OSVersion
NOT LIKE '.*Experimental.*',
m_MibVar = 'sysDescr.0'
),
(
m_ObjectId LIKE '1\.3\.6\.1\.4\.1\.9\.',
m_OSVersion >= '12.2(19)' AND m_OSVersion < '12.3' AND m_OSVersion
NOT LIKE '.*Experimental.*',
m_MibVar = 'sysDescr.0'
),
(
m_ObjectId LIKE '1\.3\.6\.1\.4\.1\.9\.',
m_OSVersion >= '12.3(18)' AND m_OSVersion < '12.4' AND m_OSVersion
NOT LIKE '.*Experimental.*',
m_MibVar = 'sysDescr.0'
),
(
m_ObjectId LIKE '1\.3\.6\.1\.4\.1\.9\.',
m_OSVersion >= '12.4',
m_MibVar = 'sysDescr.0'
)"
);
.
.
.
}
DiscoAgentPrecedence
The DiscoAgentPrecedence
keyword
specifies which agent gets precedence when there is conflicting data
from two agents. Specify a value that is greater than or equal to
0 (zero). The recommended range of values is from 1 to 100, where
the higher the number the higher the precedence. The higher the precedence
the more that agent data is correct. For example, if given conflicting
data from a precedence 2 agent and a precedence 3 agent then the precedence
3 agent data is used.
The following example shows a DiscoAgentPrecedence
keyword
for a frame relay type agent set to a precedence of 2.
DiscoCompiledAgent
{
.
.
.
DiscoAgentGUILocked( 0 );
DiscoAgentClass( 6 );
DiscoAgentIsIndirect( 0 );
DiscoAgentPrecedence( 2 );
.
.
.
DiscoAgentEnabledByDefaultOnPartial( 1 );
DiscoAgentEnabledByDefault( 1 );
}
DiscoPerlAgent
The DiscoPerlAgent
keyword
specifies whether this .agnt
file refers to a Perl
agent.
The following example shows a DiscoPerlAgent
keyword
specified for a Perl based agent that extracts information about the
operating system running on the device.
DiscoPerlAgent
{
.
.
.
DiscoAgentGUILocked( 0 );
DiscoAgentClass( 0 );
DiscoAgentIsIndirect( 0 );
DiscoAgentPrecedence( 2 );
DiscoAgentEnabledByDefaultOnPartial( 0 );
DiscoAgentEnabledByDefault( 0 );
}