The Domino SNMP Agent
The Domino® SNMP Agent enhances the monitoring and control features of Domino by enabling third-party management stations, which use industry standard SNMP, to manage aspects of the Domino server.
The Domino SNMP Agent consists of:
- LNSNMP -- An independent application that receives trap notifications
from the Event Interceptor and then sends them to the management station
using the platform-specific, master SNMP Agent. LNSNMP also handles
requests for Domino-related information from the management station
by passing the request to the QuerySet Handler and responding back
to the management station. LNSNMP includes the:
- Recent Trap Table -- A dynamic table stored in LNSNMP containing the last ten trap notifications sent from the Event Interceptor.
- Trap Generator -- Part of the Domino SNMP Agent that receives Domino events from the Event Interceptor and sends them to the management station using the master SNMP Agent.
- QuerySet Handler -- An add-in task that queries server statistics information and sets the value of configurable Domino-based parameters. The QuerySet Handler returns Domino statistics information to LNSNMP, which then forwards the information to the management station using the platform-specific, master SNMP Agent.
- Event Interceptor -- An add-in task that responds to the SNMP Trap notification for Domino Event Handlers by instructing the Trap Generator to issue a trap.
The Domino SNMP Agent's main functions
The agent provides:
- Out-of-band server status through the MIB
- Control of a Domino server through SNMP
- Real-time alerts on server status
- Forwarding of Domino events as SNMP traps
- Domino statistics through the MIB
The Domino SNMP Agent supports SNMP version 1.
Out-of-band server status through the MIB
The Domino SNMP Agent constantly monitors the status of the server indirectly through a Domino SNMP Agent server add-in task using IPC to determine whether the server is up or down. The Domino SNMP Agent is not a Notes® API application; all of its status information is gathered out of band.
Control of a Domino server through SNMP
The following three control functions are available through SNMP:
- Stop the Domino server
- Start the Domino server
- Reboot the operating systemNote: Rebooting is not supported on the zSeries (S/390®) platform.
As a security feature, these functions are not available by default. Each function must be configured on a per-server basis.
Real-time alerts on server status
The Domino SNMP Agent constantly monitors the status of the server. Changes in status are sent as SNMP traps. Real-time alerts on server status significantly enhance monitoring whether a server is up or down in three ways:
- The information is provided in real-time.
- The information is available out-of-band. Determining whether the server is up or down does not require the Notes client or Domino server.
- The information is qualitatively better. Instead of two states,
up or down, SNMP can determine seven states or events as follows:
Table 1. SNMP states or events Message Status Specific trap number Clearing trap number
Domino server is up: [server name] (This server has been started by a console command or using SNMP.)
Domino server is shut down: [server name] (This server has been shut down by a console command or using SNMP.)
Domino server pulse has failed: [server name] (This server is excessively busy or unresponsive to the SNMP pulse.)
Domino server pulse is restored: [server name] (This server is no longer busy and now responding to the SNMP pulse.)
System is rebooting (The Domino SNMP Agent is rebooting the entire system.)
Domino server is not responding: [server name] (This server may have crashed or hung.)
Domino server is now responding: [server name] (This server is now responding again.)
The most important additional state is whether the server has been disabled intentionally. This avoids situations such as paging support staff during periods of routine maintenance.
The method for determining the server state is a pulse between LNSNMP and its Domino server add-in tasks (first the QuerySet Handler or else the Event Interceptor). Traps 13 and 16 get raised only if LNSNMP first determines that the server is working by communicating with the SNMP add-in tasks. Traps are not raised if the server starts up with a problem. Trap 16 will occur if the trap 13 condition persists (server not responding); in other words, you will see a trap 13 before you see a trap 16.
Forwarding of Domino events as SNMP traps
Forwarding of Domino events is similar to real-time alerts. SNMP traps are forwarded in real-time as soon as Domino generates them using the Event server task. Statistics monitors are not strictly real-time because Domino generates them only periodically using the Collector server task. One advantage of the Domino SNMP Agent is that it allows these events to be consolidated across Domino domains.
The text message of the Domino event contains several items of information that are labeled as follows:
Server -- Full name of the originating Domino server.
Type -- Event Type.
Severity -- Event Severity.
TimeStamp -- Time stamp is converted to UNIX Epoch format. Note that this is the server's time stamp, not the console's.
Text -- The Event Message (in the local language of the server).
Seq -- Assigned by LNSNMP.
Type codes are numeric and correspond to the respective Event Types seen in Domino Event Monitors:
Severity codes are numeric and correspond to the respective Event Severities seen in Domino Event Monitors:
3 Warning (high)
4 Warning (low)
Domino statistics through the MIB
Many Domino statistics are available using SNMP. It's possible to see which MIB objects are derived directly from Domino statistics by examining comments in the Domino MIB that begin with the string "--<<".
SNMP version 1 is not a secure protocol. SNMP's native security uses only community names and IP addresses. All sites should review deployment of the Domino SNMP Agent with their security staff. However, the control functions provided by the Domino SNMP Agent do not present significant security risks (for example, access to the console or databases is not affected).