Chapter 7. Configuration Files


This chapter describes the configuration files used with the Agent Integrator and other BEA Manager SNMP products. It includes the following sections:

BEA Manager Configuration File (beamgr.conf)

beamgr.conf is the configuration file for the Agent Integrator and other BEA Manager applications.

Default Location

On UNIX systems: /etc/beamgr.conf
On Windows NT systems: C:\etc\beamgr.conf

Description

The beamgr.conf file contains information used by the BEA Manager products (including Agent Integrator, Agent Connection, and Log Central) and the SNMP agents and SMUX subagents created using the BEA Manager Agent Development Kit. The location of this configuration file may be specified by the environment variable BEA_SM_BEAMGR_CONF. A configuration entry is composed of two or more blank or tab-separated fields:

KEYWORD parameters

If an entry happens to be too long, the backslash (\) character can be used as a continuation character at the end of the line. There should be a newline character immediately following the \ character.

The following keywords have corresponding MIB objects: TMEVENT_FILTER, SYS_INSTALL, SYS_CONTACT, SYS_NAME, SYS_LOCATION, SYS_SERVICES, and RULE_ACTION.

Keywords Used by All BEA Manager Products

TRAP_HOST
Host name, port number, and community name necessary to send SNMP traps. The parameters are:

host_name trap_port trap_community

host_hame is the name of the target destination machine for the trap notification. Default is the local host.

You may have multiple TRAP_HOST entries in the configuration file if you wish to send traps to multiple destinations.

The TRAP_HOST entry is used by the following software components to determine trap destinations when generating SNMP trap notifications:

SNMP_ENABLE_AUTH_TRAP
This field contains a value to indicate if the SNMP agent is permitted to generate authentication-failure traps. If the value is 1, the SNMP agent generates authentication-failure traps if an invalid request (as per the community profile) is received. If the value is not 1, no authentication-failure trap is generated.

OID_CLASS
This entry is used by the SMUX subagents created by the BEA Agent Development Kit. This entry is discussed in the section "The OID_CLASS Entry."

Keywords Used by the Agent Integrator

INTEGRATOR_TIMEOUT
Sets the Agent Integrator timeout in waiting for responses to requests. The default timeout is 3 seconds. If you are using tux_snmpd or m3_snmpd as a subagent to manage TUXEDO 6.3 or 6.4 applications, you need to configure the Agent Integrator timeout to at least 30 seconds. This can be done by adding a INTEGRATOR_TIMEOUT entry as follows:

BEA_PEER MAX_WAIT 30

INTEGRATOR_MAX_TIMEOUTS
Sets the maximum number of times the Agent Integrator allows requests to an SNMP peer or SMUX subagent to timeout before disregarding any further requests for that agent or subagent. The default is 3.

NON_SMUX_PEER
This keyword specifies the OIDs supported by an SNMP agent when it is running as a peer of the Agent Integrator. This entry is discussed in the next section, "The NON_SMUX_PEER Entry."

RULE_ACTION
This keyword is used to specify an Agent Integrator polling rule. This allows threshold-checking to be offloaded from the network management system to the distributed Integrator agents on managed nodes. This entry is discussed in the section "The RULE_ACTION Entry."

Keywords Used by the Agent Connection

TMAGENT
This entry is used to define the TUXEDO or M3 domain that an agent is to monitor. There must be one TMAGENT entry for each TUXEDO or M3 agent on a managed node. The format of the entry is as follows:

TMAGENT logical_agent_name tuxdir tuxconfig_path

Monitoring of multiple domains is done by running a separate TUXEDO or M3 agent for each domain being monitored. These agents must be run as subagents under the Agent Integrator.

When there are multiple TUXEDO or M3 SNMP agents running on a managed node, the logical agent name must be used to modify the community in SET or GET requests. The community must be of the following form:

community@logical_agent_name

For example:

public@payrollagent

The community does not need to be qualified with the logical agent name when there is only one TUXEDO or M3 SNMP agent running on the managed node.

TMEVENT_FILTER
This entry is used to define a subset of TUXEDO event notifications that are to be forwarded as SNMP trap notifications. By default, if no filter is provided, the Agent Connection forwards all TUXEDO events as SNMP traps. The format of the entry is:

TMEVENT_FILTER filter_id logical_agent_name tux_evt_expr tux_evt_filter status

Note: The strings that are used for each of the parameters must not have blanks or white space.

The parameters have the following interpretation:

filter_id
Is a string that must be unique among all TMEVENT_FILTER entries in the BEA Manager configuration file. Maximum length of the string is 16 characters.

logical_agent_name
Maps the event filter to a particular agent on that node. A logical agent name is a string up to 32 characters in length. The logical agent name is as specified in the -l option used when starting the agent (on UNIX systems) or the name of the Windows NT service (on Windows NT systems).

tux_evt_expr
Is a TUXEDO event name expression. This is a string up to 255 characters in length. Refer to the recomp entry in section 3 of the BEA TUXEDO Reference Manual for information about event name expressions. This name must match a TUXEDO event name for that event to be forwarded as an SNMP trap. See the EVENTS entry in the BEA TUXEDO Reference Manual for a list of event names.The default is all events. If NONE is used, no events are forwarded and the other parameters in the TMEVENT_FILTER entry can be omitted. An entry of NONE overrides all other event filter entries for the same logical agent name. Examples:
An entry of
\.Sys.*
matches all events. An entry of
\.SysServer.*
matches all system events related to servers.

tux_evt_filter
Is an event filter expression. This is a string up to 255 characters in length. Each TUXEDO event is accompanied by an FML buffer that contains pertinent information about the event. The buffer is evaluated with respect to this filter if the filter is present. If the buffer content is evaluated to TRUE, the event is forwarded, otherwise not. The Agent Connection uses this filter as an argument for a call to tpsubscribe(). Refer to the tpsubscribe()entry in section 3 of the BEA TUXEDO Reference Manual for more information.

status
Is either active or inactive. If the status is active, the filter is being used, otherwise not.

There is a MIB table that corresponds to the TMEVENT_FILTER entries in the BEA Manager configuration file. These entries can be updated dynamically using an SNMP SET request. For more information, refer to the beaEvtFilterTable section in the Agent Connection for TUXEDO and M3 Reference Manual.

Keywords Used by unix_snmpd and nt_snmpd

The following keywords are used by the subagents (unix_snmpd and nt_snmpd) shipped with Agent Integrator:

SYS_INSTALL
The field associated with this keyword indicates when the SNMP agent was installed and configured on the host.

SYSOBJID
The field associated with this keyword refers to the sysObjectId MIB-II object. If this keyword is not specified in the configuration file, .1.3.6.1.4.1.140.1.1 is used as the value of the sysObjectId object.
This keyword is also used by the Agent Development Kit trap functions to determine default enterprise identifier (OID). Refer to the "Tools and Functions" chapter in the Agent Development Kit Programmer's Guide for more information.

SYS_DESCR
The field associated with this keyword refers to the sysDescr MIB-II object.

SYS_CONTACT
A description of the contact person in case of problems.

SYS_NAME
Any string to describe the system running on that host.

SYS_LOCATION
Any information about the physical location of the host.

SYS_SERVICES
List of services offered by the host. If running the BEA Manager platform with applications, the list of application services running on the host may be listed here.

SYSSERVICES
List of layers supported. This field refers to the sysServices object in the MIB-II system group. See the MIB-II definition in RFC 1213 for more information about this field. This is a distinct entry from SYS_SERVICES.

The NON_SMUX_PEER Entry

To configure the BEA Agent Integrator to access MIB objects through a peer SNMP agent, (e.g., a non-SMUX master agent), add the NON_SMUX_PEER entry to the beamgr.conf file in the following format:

NON_SMUX_PEER port community|* OID_Node[,ro|rw][,priority][,timeout] ...

The explanation of the terms used in the previous entry follows.

NON_SMUX_PEER
Is the keyword for the entry.

port
Specifies the UDP port number on which the SNMP agent is listening. This value can be specified in the forms:

ip_address.port
hostname.port

when the SNMP agent is remote from the Agent Integrator. If ip_address or hostname is not specified, the Agent Integrator assumes that the peer SNMP agent is on the same managed node as the Agent Integrator.

community
Specifies the community to be used by the Agent Integrator when the SNMP agent is polled. The special value * is used to specify that the Agent Integrator should use the community supplied by the SNMP manager.

OID_Node
Specifies the OID of the root of the MIB tree that is supported by this SNMP agent.

ro|rw
Specifies whether this OID tree is being exported as read-only or as read-write. The default is rw.

priority
Is a positive number that specifies the priority at which the OID tree is being exported. The lower the number, the higher the priority. If there are multiple agents/subagents supporting the same MIB tree, the subagent with the highest priority is consulted. Multiple SNMP agents and SMUX subagents may register the same subtree. However, they must do so at different priorities.
If an SNMP agent tries to register a subtree at a priority that is already taken, the Agent Integrator repeatedly increments the integer value (lowering the priority) until an unused priority is found. A special priority -1, causes the selection of the highest available priority. When a request is made to register with priority -1, registration is made at the highest available number below 20. If the priority field is missing, the MIB tree is exported at a -1 priority.

timeout
Specifies the time interval in seconds for which the Agent Integrator waits for the replies from this SNMP agent for the particular MIB group. The default value is three seconds. This default may be changed by setting the BEA_PEER_MAX_WAIT environment variable to a different value.

The access (ro or rw), priority, and timeout fields are optional. But you must specify access and priority if you wish to specify timeout, and you must specify access if you wish to specify priority for a MIB tree.

Multiple OID nodes can be listed.

Note: A subtree registration will hide the registrations by other SNMP agents/subagents of objects within the subtree. So, if an agent A registers subtree .1.3.6.1.4.1.140 and another agent/subagent, B, registers subtree .1.3.6.1.4.1.140.1, agent/subagent A will be consulted for all the objects under the .1.3.6.1.4.1.140.1 subtree.

Also, when the Agent Integrator reads this entry, an SNMP agent should be running on the specified port. Otherwise, the Agent Integrator disregards this entry. Also, if three consecutive requests to this SNMP agent time out, it is assumed that the SNMP agent specified by this entry is no longer alive and this entry is disregarded.

At any point, the utility reinit_integrator can be used to force the Agent Integrator to re-read its configuration file.

The Agent Integrator will disallow/disregard any attempt to register above, at, or below the SNMP (mib2.snmp) and SMUX subtrees of the MIB.

NON_SMUX_PEER Examples

The OID_CLASS Entry

This entry is used by the SMUX subagents created by the Agent Development Kit. The unix_snmpd, nt_snmpd, and pm_snmpd subagents are SMUX subagents created using the Agent Development Kit which are shipped along with snmp_integrator. Normally, SMUX subagents register all the MIB groups they know about with the SMUX master agent. But you may limit the MIB groups exported by these SMUX subagents. In order to do so, you need to add an OID_CLASS entry to beamgr.conf in the following format:

OID_CLASS agent_name OID_Node[,ro|rw][,priority] .. 

An explanation of the terms used in the previous entry follows.

OID_CLASS
Is the keyword for the entry.

agent_name
Specifies the name of the SMUX subagent for which this entry is applicable.

OID_Node
Specifies the OID of the tree that is supported by this subagent.

ro|rw
Specifies whether this OID tree is being exported as read-only or as read-write. The default is rw.

priority
Is a positive number that specifies the priority at which the OID tree is being exported. The lower the number, the higher the priority. If there are multiple subagents supporting the same MIB tree, the subagent with the highest priority is consulted. If the priority field is missing, the MIB tree is exported at the highest available priority. This entry is mainly used to limit the OID subtrees being exported by the Agent Integrator or SMUX subagents generated using the Agent Development Kit. If this entry is not present, the SMUX subagent exports all the MIB groups it knows about.

Multiple OID nodes can be listed.

Example

Assume you have a SMUX subagent called my_snmpd. This subagent is created using the Agent Development Kit and supports the MIB groups .1.3.6.1.4.1.140.1, .1.3.6.1.4.1.140.2, and .1.3.6.1.2.1.1. When this subagent starts, it registers all three MIB groups as read-write with the SMUX master agent. If, for example, you want my_snmpd to only export .1.3.6.1.4.1.140.1 as read-only and .1.3.6.1.2.1 as read-write, you would need to insert an entry of the following form:

OID_CLASS my_snmpd .1.3.6.1.4.1.140.1,ro .1.3.6.1.2.1.1

The RULE_ACTION Entry

The BEA Agent Integrator can be configured to do management locally on the managed node and inform the SNMP manager selectively to reduce polling traffic generated by SNMP manager. The user can define rules in terms of MIB objects available locally using a C-like "IF" syntax and accordingly send SNMP traps or execute commands locally (or both). These MIB objects may be the one supported by the Agent Integrator itself or the one supported by one of its SMUX subagents or SNMP agents. For a discussion of RULE_ACTION entries, with examples, refer to Chapter 4, "Using Agent Integrator for Polling."

The configuration is done in the beamgr.conf file. Syntax of the entry looks like following:

RULE_ACTION rule-name frequency_in_secs \
if (VAL(oid) rel_operator value) logical_op ( cond_2 ) ...\
{ \
TRAPID_ERR=enterprise-specific-trapid\
TRAPID_OK=enterprise-specific-trapid\
COMMAND_ERR=executable\
COMMAND_OK=executable\
}

Note: The whole entry should appear on the same line, else the backslash (\) should be used as a continuation character. If \ is being used as a continuation character, a newline character should immediately follow it.

RULE_ACTION
Is a keyword to identify this entry.

rule-name
Is a unique identifier for each RULE_ACTION entry and is passed as a command-line argument to any commands specified as actions in the rule. This identifier cannot be more than 8 characters long.

frequency
Is the polling frequency (in seconds) at which the snmp_integrator should check the condition.

VAL
Each left-hand side of a condition should have this keyword which should be followed by the object identifier (within parenthesis) of the MIB object. Each rule can contain a maximum of ten VAL keywords.

oid
Is an object identifier (OID). The OID must be specified only in numeric form and can be in one of the following formats:

Columnar objects are used to represent a column of a tabular MIB group. Columnar objects accordingly can have multiple instances. The last number in an OID is used to specify the particular instance. A specific number can be used to specify a particular instance or the asterisk wildcard can be used to specify all instances. Zero is used as the instance index in the case of scalar objects (objects that can have only one instance). The asterisk wildcard is only used to represent all instances of a columnar object. For example:

.1.3.6.1.4.1.140.1.1.0

specifies the single instance of a scalar object while

1.3.6.1.4.1.140.2.22.1.2.*

specifies all of the instances of a columnar object. Note: When specifying multiple OIDs in a complex rule, the OIDs should either all use wildcards or none should. That is, you should not combine an OID that specifies a particular instance with an OID that uses a wildcard in the same rule. Also, when multiple OIDs with wildcards are used in a single rule, all of the OIDs should specify objects only within the same table.

rel_operator
Valid relational operators are listed in the table under "Relations for Defining Conditions."

value
The RHS in a condition can be one of the following: number, string, IP address: number1.number2.number3.number4, or OID (as previously explained).

If RHS is an OID it must be enclosed in single quotes. Also the type of value on RHS should correspond to the type of VALUE of the OID in LHS of the condition.

logical_op
Valid logical operators are listed in Table 4-2.

Specifying Actions

Two actions can be taken whenever there is a transition in the state of a rule from true (ERR) to false (OK) and false (OK) to true (ERR) - namely execute a command and/or generate an SNMP_TRAP. When generic OIDs (an asterisk used to specify all instances of a columnar object) are used to define a rule, the rule state transitions from the OK state to the ERR state if the threshold evaluates to true for any row in the table and the rule state transitions from ERR to OK if the threshold evaluates to false for all rows in the MIB table. Initially, the rule states of all rules are set to OK when the Integrator starts up (or is re-initialized using the reinit_agent command). Actions are specified using the following keywords:

TRAPID_ERR = number
This indicates that an enterprise specific SNMP trap with trapid of number should be generated whenever there is a transition from false (OK) to true (ERR).

TRAPID_OK = number
This indicates that an enterprise specific SNMP trap with trapid of number should be generated whenever there is a transition from true (ERR) to false (OK).

COMMAND_ERR = command
This indicates that command should be executed whenever there is a transition from false (OK) to true (ERR).

COMMAND_OK = command
This indicates that command should be executed whenever there is a transition from true (ERR) to false (OK).

BEA Manager Passwords File (beamgr_snmpd.conf)

beamgr_snmpd.conf is a configuration file used by the BEA Manager Agent Integrator and subagents generated using the Agent Development Kit.

Default Location

/etc/beamgr_snmpd.conf on UNIX platforms.
C:\etc\beamgr_snmpd.conf on Windows NT systems.

Description

The file beamgr_snmpd.conf contains information used by the BEA Manager Agent Integrator, or by programs created using the Agent Development Kit when they are used as SNMP agents, as opposed to SMUX subagents. This file is separate from the beamgr.conf file because it contains the SNMP community strings which are used as passwords in communication between agents and managers.

This file will be installed with access privileges for root only. For password security, the read and write permissions for the beamgr_snmpd.conf file should be set to allow access only by root.

A configuration entry is composed of two or more blank or tab-separated fields:

KEYWORD  parameters

Recognized values for KEYWORD are:

COMMUNITY_RW
The string following this keyword specifies the read-write community for the agent. If this keyword is not present in the configuration file, the SNMP agent takes beamgr as the read-write community. Entries with this keyword may be repeated more than one time, in order to specify more than one read-write community.

COMMUNITY_RO
The string following this keyword specifies the read-only community for the agent. If this keyword is not present in the configuration file, the SNMP agent takes public as the read-only community. Entries with this keyword may be repeated more than one time, in order to specify more than one read-only community.

SMUX_PASSWD
The string following this keyword specifies the SMUX password. Any SMUX subagent wishing to register with the Agent Integrator should specify this password. If this keyword is not present, no authentication is done by the Agent Integrator.

DISABLE_SET
The possible values for this keyword are YES or NO. NO is the default. If set to YES, SET access for all BEA Manager agents (including agents built using the Agent Development Kit) is disabled.