diff options
author | Nathan Kinder <nkinder@redhat.com> | 2005-03-03 19:21:46 +0000 |
---|---|---|
committer | Nathan Kinder <nkinder@redhat.com> | 2005-03-03 19:21:46 +0000 |
commit | f08951680ddfebc3f3df07e720ad0650fe473c0f (patch) | |
tree | 5e7963512649bbb29c65c2f4890fced527827bb4 /ldap | |
parent | 5af7cf5e1897d94cbc34c8ad19227a0755cc1843 (diff) | |
download | ds-f08951680ddfebc3f3df07e720ad0650fe473c0f.tar.gz ds-f08951680ddfebc3f3df07e720ad0650fe473c0f.tar.xz ds-f08951680ddfebc3f3df07e720ad0650fe473c0f.zip |
Updated SNMP OIDs for Red Hat namespace
Diffstat (limited to 'ldap')
-rw-r--r-- | ldap/servers/snmp/ldap-agent.c | 58 | ||||
-rw-r--r-- | ldap/servers/snmp/ldap-agent.h | 21 | ||||
-rw-r--r-- | ldap/servers/snmp/redhat-directory.mib | 724 |
3 files changed, 770 insertions, 33 deletions
diff --git a/ldap/servers/snmp/ldap-agent.c b/ldap/servers/snmp/ldap-agent.c index a8060e8c..efce4106 100644 --- a/ldap/servers/snmp/ldap-agent.c +++ b/ldap/servers/snmp/ldap-agent.c @@ -289,9 +289,9 @@ load_stats_table(netsnmp_cache *cache, void *foo) if (serv_p->server_state == SERVER_UP) { snmp_log(LOG_INFO, "Detected start of server: %d\n", serv_p->port); - send_nsDirectoryServerStart_trap(serv_p); + send_DirectoryServerStart_trap(serv_p); } else { - send_nsDirectoryServerDown_trap(serv_p); + send_DirectoryServerDown_trap(serv_p); /* Zero out the ops and entries tables */ memset(&ctx->ops_tbl, 0x00, sizeof(ctx->ops_tbl)); memset(&ctx->entries_tbl, 0x00, sizeof(ctx->entries_tbl)); @@ -299,8 +299,8 @@ load_stats_table(netsnmp_cache *cache, void *foo) } else if (ctx->hdr_tbl.startTime != previous_start) { /* Send traps if the server has restarted since the last load */ snmp_log(LOG_INFO, "Detected restart of server: %d\n", serv_p->port); - send_nsDirectoryServerDown_trap(serv_p); - send_nsDirectoryServerStart_trap(serv_p); + send_DirectoryServerDown_trap(serv_p); + send_DirectoryServerStart_trap(serv_p); } } } else { @@ -575,30 +575,37 @@ dsEntityTable_get_value(netsnmp_request_info *request, } /************************************************************ - * send_nsDirectoryServerDown_trap + * send_DirectoryServerDown_trap * * Sends off the server down trap. */ int -send_nsDirectoryServerDown_trap(server_instance *serv_p) +send_DirectoryServerDown_trap(server_instance *serv_p) { netsnmp_variable_list *var_list = NULL; + stats_table_context *ctx = NULL; snmp_log(LOG_INFO, "Sending down trap for server: %d\n", serv_p->port); /* Define the oids for the trap */ - oid nsDirectoryServerDown_oid[] = { nsDirectoryServerDown_OID }; + oid DirectoryServerDown_oid[] = { DirectoryServerDown_OID }; oid dsEntityDescr_oid[] = { dsEntityTable_TABLE_OID, 1, COLUMN_DSENTITYDESCR, serv_p->port }; oid dsEntityVers_oid[] = { dsEntityTable_TABLE_OID, 1, COLUMN_DSENTITYVERS, serv_p->port }; oid dsEntityLocation_oid[] = { dsEntityTable_TABLE_OID, 1, COLUMN_DSENTITYLOCATION, serv_p->port }; oid dsEntityContact_oid[] = { dsEntityTable_TABLE_OID, 1, COLUMN_DSENTITYCONTACT, serv_p->port }; - + + /* Lookup row to get version string */ + if ((ctx = stats_table_find_row(serv_p->port)) == NULL) { + snmp_log(LOG_ERR, "Malloc error finding row for server: %d\n", serv_p->port); + return 1; + } + /* Setup the variable list to send with the trap */ snmp_varlist_add_variable(&var_list, snmptrap_oid, OID_LENGTH(snmptrap_oid), ASN_OBJECT_ID, - (u_char *) &nsDirectoryServerDown_oid, - sizeof(nsDirectoryServerDown_oid)); + (u_char *) &DirectoryServerDown_oid, + sizeof(DirectoryServerDown_oid)); snmp_varlist_add_variable(&var_list, dsEntityDescr_oid, OID_LENGTH(dsEntityDescr_oid), ASN_OCTET_STR, @@ -607,8 +614,8 @@ send_nsDirectoryServerDown_trap(server_instance *serv_p) snmp_varlist_add_variable(&var_list, dsEntityVers_oid, OID_LENGTH(dsEntityVers_oid), ASN_OCTET_STR, - (char *) serv_p->version, - strlen(serv_p->version)); + (char *) ctx->hdr_tbl.dsVersion, + strlen(ctx->hdr_tbl.dsVersion)); snmp_varlist_add_variable(&var_list, dsEntityLocation_oid, OID_LENGTH(dsEntityLocation_oid), @@ -630,29 +637,36 @@ send_nsDirectoryServerDown_trap(server_instance *serv_p) } /************************************************************ - * send_nsDirectoryServerStart_trap + * send_DirectoryServerStart_trap * * Sends off the server start trap. */ int -send_nsDirectoryServerStart_trap(server_instance *serv_p) +send_DirectoryServerStart_trap(server_instance *serv_p) { netsnmp_variable_list *var_list = NULL; - + stats_table_context *ctx = NULL; + snmp_log(LOG_INFO, "Sending start trap for server: %d\n", serv_p->port); - + /* Define the oids for the trap */ - oid nsDirectoryServerStart_oid[] = { nsDirectoryServerStart_OID }; + oid DirectoryServerStart_oid[] = { DirectoryServerStart_OID }; oid dsEntityDescr_oid[] = { dsEntityTable_TABLE_OID, 1, COLUMN_DSENTITYDESCR, serv_p->port }; oid dsEntityVers_oid[] = { dsEntityTable_TABLE_OID, 1, COLUMN_DSENTITYVERS, serv_p->port }; oid dsEntityLocation_oid[] = { dsEntityTable_TABLE_OID, 1, COLUMN_DSENTITYLOCATION, serv_p->port }; - + + /* Lookup row to get version string */ + if ((ctx = stats_table_find_row(serv_p->port)) == NULL) { + snmp_log(LOG_ERR, "Malloc error finding row for server: %d\n", serv_p->port); + return 1; + } + /* Setup the variable list to send with the trap */ snmp_varlist_add_variable(&var_list, snmptrap_oid, OID_LENGTH(snmptrap_oid), ASN_OBJECT_ID, - (u_char *) &nsDirectoryServerStart_oid, - sizeof(nsDirectoryServerStart_oid)); + (u_char *) &DirectoryServerStart_oid, + sizeof(DirectoryServerStart_oid)); snmp_varlist_add_variable(&var_list, dsEntityDescr_oid, OID_LENGTH(dsEntityDescr_oid), ASN_OCTET_STR, @@ -661,8 +675,8 @@ send_nsDirectoryServerStart_trap(server_instance *serv_p) snmp_varlist_add_variable(&var_list, dsEntityVers_oid, OID_LENGTH(dsEntityVers_oid), ASN_OCTET_STR, - (char *) serv_p->version, - strlen(serv_p->version)); + (char *) ctx->hdr_tbl.dsVersion, + strlen(ctx->hdr_tbl.dsVersion)); snmp_varlist_add_variable(&var_list, dsEntityLocation_oid, OID_LENGTH(dsEntityLocation_oid), diff --git a/ldap/servers/snmp/ldap-agent.h b/ldap/servers/snmp/ldap-agent.h index 6acf79c6..4ce3fcf3 100644 --- a/ldap/servers/snmp/ldap-agent.h +++ b/ldap/servers/snmp/ldap-agent.h @@ -20,8 +20,8 @@ extern "C" { /************************************************************* * Trap value defines */ -#define SERVER_UP 7002 -#define SERVER_DOWN 7001 +#define SERVER_UP 6002 +#define SERVER_DOWN 6001 #define STATE_UNKNOWN 0 /************************************************************* @@ -33,7 +33,6 @@ typedef struct server_instance_s { char *stats_file; char *dse_ldif; char *description; - char *version; char *org; char *location; char *contact; @@ -68,8 +67,8 @@ typedef struct stats_table_context_s { int dsEntityTable_get_value(netsnmp_request_info *, netsnmp_index *, netsnmp_table_request_info *); - int send_nsDirectoryServerDown_trap(server_instance *); - int send_nsDirectoryServerStart_trap(server_instance *); + int send_DirectoryServerDown_trap(server_instance *); + int send_DirectoryServerStart_trap(server_instance *); /************************************************************* * Oid Declarations @@ -83,13 +82,13 @@ typedef struct stats_table_context_s { extern oid snmptrap_oid[]; extern size_t snmptrap_oid_len; -#define enterprise_OID 1,3,6,1,4,1,1450 -#define dsOpsTable_TABLE_OID enterprise_OID,7,1 -#define dsEntriesTable_TABLE_OID enterprise_OID,7,2 -#define dsEntityTable_TABLE_OID enterprise_OID,7,5 +#define enterprise_OID 1,3,6,1,4,1,2312 +#define dsOpsTable_TABLE_OID enterprise_OID,6,1 +#define dsEntriesTable_TABLE_OID enterprise_OID,6,2 +#define dsEntityTable_TABLE_OID enterprise_OID,6,5 #define snmptrap_OID 1,3,6,1,6,3,1,1,4,1,0 -#define nsDirectoryServerDown_OID enterprise_OID,0,7001 -#define nsDirectoryServerStart_OID enterprise_OID,0,7002 +#define DirectoryServerDown_OID enterprise_OID,0,6001 +#define DirectoryServerStart_OID enterprise_OID,0,6002 /************************************************************* * dsOpsTable column defines diff --git a/ldap/servers/snmp/redhat-directory.mib b/ldap/servers/snmp/redhat-directory.mib new file mode 100644 index 00000000..f18717ce --- /dev/null +++ b/ldap/servers/snmp/redhat-directory.mib @@ -0,0 +1,724 @@ +-- BEGIN COPYRIGHT BLOCK +-- Copyright (C) 2001 Sun Microsystems, Inc. Used by permission. +-- Copyright (C) 2005 Red Hat, Inc. +-- All rights reserved. +-- END COPYRIGHT BLOCK +-- +-- +-- MIB for Red Hat and Fedora Directory Server +-- +-- This is an implementation of the MADMAN mib for monitoring LDAP/CLDAP and X.500 +-- directories described in RFC 2788 and 2789 +-- with the addition of traps for server up and down events + +RHDS-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, Counter32, Gauge32, OBJECT-TYPE + FROM SNMPv2-SMI + DisplayString, TimeStamp, TEXTUAL-CONVENTION + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP + FROM SNMPv2-CONF + applIndex, DistinguishedName, URLString + FROM NETWORK-SERVICES-MIB + enterprises + FROM RFC1155-SMI + TRAP-TYPE + FROM RFC-1215; + + redhat OBJECT IDENTIFIER ::= {enterprises 2312} + + URLString ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "I couldn't find it but madman said it should be here, guessing DisplayString" + SYNTAX DisplayString + + rhds MODULE-IDENTITY + LAST-UPDATED "200503020000Z" + ORGANIZATION "Red Hat, Inc." + CONTACT-INFO + "Red Hat, Inc. + Website: http://www.redhat.com" + DESCRIPTION + " An implementation of the MADMAN mib for monitoring LDAP/CLDAP and X.500 + directories described in RFC 2788 and 2789 + used for Red Hat and Fedora Directory Server" + ::= {redhat 6} + + dsOpsTable OBJECT-TYPE + SYNTAX SEQUENCE OF DsOpsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " The table holding information related to the + DS operations." + ::= {rhds 1} + + dsOpsEntry OBJECT-TYPE + SYNTAX DsOpsEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " Entry containing operations related statistics + for a DS." + INDEX { applIndex } + ::= {dsOpsTable 1} + + DsOpsEntry ::= SEQUENCE { + + -- Bindings + + dsAnonymousBinds + Counter32, + dsUnAuthBinds + Counter32, + dsSimpleAuthBinds + Counter32, + dsStrongAuthBinds + Counter32, + dsBindSecurityErrors + Counter32, + + -- In-coming operations + + dsInOps + Counter32, + dsReadOps + Counter32, + dsCompareOps + Counter32, + dsAddEntryOps + Counter32, + dsRemoveEntryOps + Counter32, + dsModifyEntryOps + Counter32, + dsModifyRDNOps + Counter32, + dsListOps + Counter32, + dsSearchOps + Counter32, + dsOneLevelSearchOps + Counter32, + dsWholeSubtreeSearchOps + Counter32, + + -- Out going operations + + dsReferrals + Counter32, + dsChainings + Counter32, + + -- Errors + + dsSecurityErrors + Counter32, + dsErrors + Counter32 + } + + -- CLDAP does not use binds; for A CLDAP DS the bind + -- related counters will be inaccessible. + -- + -- CLDAP and LDAP implement "Read" and "List" operations + -- indirectly via the "search" operation; the following + -- counters will be inaccessible for CLDAP and LDAP DSs: + -- dsReadOps, dsListOps + -- + -- CLDAP does not implement "Compare", "Add", "Remove", + -- "Modify", "ModifyRDN"; the following counters will be + -- inaccessible for CLDAP DSs: + -- dsCompareOps, dsAddEntryOps, dsRemoveEntryOps, + -- dsModifyEntryOps, dsModifyRDNOps. + -- + -- CLDAP and LDAP DS's do not return Referrals + -- the following fields will remain inaccessible for + -- CLDAP and LDAP DSs: dsReferrals. + + dsAnonymousBinds OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of anonymous binds to this DS from UAs + since application start." + ::= {dsOpsEntry 1} + + dsUnAuthBinds OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of un-authenticated binds to this DS since + application start." + ::= {dsOpsEntry 2} + + dsSimpleAuthBinds OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of binds to this DS that were authenticated + using simple authentication procedures since + application start." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 8.1.2.1.1. and, RFC1777 Section 4.1" + ::= {dsOpsEntry 3} + + dsStrongAuthBinds OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of binds to this DS that were authenticated + using the strong authentication procedures since + application start. This includes the binds that were + authenticated using external authentication procedures." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Sections 8.1.2.1.2 & 8.1.2.1.3. and, RFC1777 Section 4.1." + ::= {dsOpsEntry 4} + + dsBindSecurityErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of bind operations that have been rejected + by this DS due to inappropriateAuthentication or + invalidCredentials." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 12.7.2 and, RFC1777 Section 4." + ::= {dsOpsEntry 5} + + dsInOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of operations forwarded to this DS + from UAs or other DSs since application + start up." + ::= {dsOpsEntry 6} + + dsReadOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of read operations serviced by + this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 9.1." + ::= {dsOpsEntry 7} + + dsCompareOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of compare operations serviced by + this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 9.2. and, RFC1777 section 4.8" + ::= {dsOpsEntry 8} + + dsAddEntryOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of addEntry operations serviced by + this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 11.1. and, RFC1777 Section 4.5." + ::= {dsOpsEntry 9} + + dsRemoveEntryOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of removeEntry operations serviced by + this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 11.2. and, RFC1777 Section 4.6." + ::= {dsOpsEntry 10} + + dsModifyEntryOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of modifyEntry operations serviced by + this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 11.3. and, RFC1777 Section 4.4." + ::= {dsOpsEntry 11} + + dsModifyRDNOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of modifyRDN operations serviced by + this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 11.4.and, RFC1777 Section 4.7" + ::= {dsOpsEntry 12} + + dsListOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of list operations serviced by + this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 10.1." + ::= {dsOpsEntry 13} + + dsSearchOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of search operations- baseObject searches, + oneLevel searches and wholeSubtree searches, + serviced by this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 10.2. and, RFC1777 Section 4.3." + ::= {dsOpsEntry 14} + + dsOneLevelSearchOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of oneLevel search operations serviced + by this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 10.2.2.2. and, RFC1777 Section 4.3." + ::= {dsOpsEntry 15} + + dsWholeSubtreeSearchOps OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of wholeSubtree search operations serviced + by this DS since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 10.2.2.2. and, RFC1777 Section 4.3." + ::= {dsOpsEntry 16} + + dsReferrals OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of referrals returned by this DS in response + to requests for operations since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 12.6." + ::= {dsOpsEntry 17} + + dsChainings OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of operations forwarded by this DS + to other DSs since application startup." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.518, 1988: + Section 14." + ::= {dsOpsEntry 18} + + dsSecurityErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of operations forwarded to this DS + which did not meet the security requirements. " + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Section 12.7. and, RFC1777 Section 4." + ::= {dsOpsEntry 19} + + dsErrors OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of operations that could not be serviced + due to errors other than security errors, and + referrals. + A partially serviced operation will not be counted + as an error. + The errors include NameErrors, UpdateErrors, Attribute + errors and ServiceErrors." + REFERENCE + " CCITT Blue Book Fascicle VIII.8 - Rec. X.511, 1988: + Sections 12.4, 12.5, 12.8 & 12.9. and, RFC1777 Section 4." + ::= {dsOpsEntry 20} + + -- Entry statistics/Cache performance + dsEntriesTable OBJECT-TYPE + SYNTAX SEQUENCE OF DsEntriesEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " The table holding information related to the + entry statistics and cache performance of the DSs." + ::= {rhds 2} + + dsEntriesEntry OBJECT-TYPE + SYNTAX DsEntriesEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " Entry containing statistics pertaining to entries + held by a DS." + INDEX { applIndex } + ::= {dsEntriesTable 1} + + + DsEntriesEntry ::= SEQUENCE { + + dsMasterEntries + Gauge32, + dsCopyEntries + Gauge32, + dsCacheEntries + Gauge32, + dsCacheHits + Counter32, + dsSlaveHits + Counter32 + } + + -- A (C)LDAP frontend to the X.500 Directory will not have + -- MasterEntries, CopyEntries; the following counters will + -- be inaccessible for LDAP/CLDAP frontends to the X.500 + -- directory: dsMasterEntries, dsCopyEntries, dsSlaveHits. + + dsMasterEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of entries mastered in the DS." + ::= {dsEntriesEntry 1} + + dsCopyEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of entries for which systematic (slave) + copies are maintained in the DS." + ::= {dsEntriesEntry 2} + + dsCacheEntries OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of entries cached (non-systematic copies) in + the DS. This will include the entries that are + cached partially. The negative cache is not counted." + ::= {dsEntriesEntry 3} + + dsCacheHits OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of operations that were serviced from + the locally held cache since application + startup." + ::= {dsEntriesEntry 4} + + dsSlaveHits OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of operations that were serviced from + the locally held object replications ( shadow + entries) since application startup." + ::= {dsEntriesEntry 5} + + -- The dsIntTable contains statistical data on the peer DSs + -- with which the monitored DSs (attempt to) interact. This + -- table will provide a useful insight into the effect of + -- neighbours on the DS performance. + -- The table keeps track of the last "N" DSs with which the + -- monitored DSs has interacted (attempted to interact), + -- where "N" is a locally-defined constant. + + dsIntTable OBJECT-TYPE + SYNTAX SEQUENCE OF DsIntEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " Each row of this table contains some details + related to the history of the interaction + of the monitored DSs with their respective + peer DSs." + ::= { rhds 3 } + + dsIntEntry OBJECT-TYPE + SYNTAX DsIntEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " Entry containing interaction details of a DS + with a peer DS." + INDEX { applIndex, dsIntIndex } + ::= { dsIntTable 1 } + + DsIntEntry ::= SEQUENCE { + + dsIntIndex + INTEGER, + dsName + DistinguishedName, + dsTimeOfCreation + TimeStamp, + dsTimeOfLastAttempt + TimeStamp, + dsTimeOfLastSuccess + TimeStamp, + dsFailuresSinceLastSuccess + Counter32, + dsFailures + Counter32, + dsSuccesses + Counter32, + dsURL + URLString + + } + + dsIntIndex OBJECT-TYPE + SYNTAX INTEGER (1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " Together with applIndex it forms the unique key to + identify the conceptual row which contains useful info + on the (attempted) interaction between the DS (referred + to by applIndex) and a peer DS." + ::= {dsIntEntry 1} + + dsName OBJECT-TYPE + SYNTAX DistinguishedName + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Distinguished Name of the peer DS to which this + entry pertains." + ::= {dsIntEntry 2} + + dsTimeOfCreation OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " The value of sysUpTime when this row was created. + If the entry was created before the network management + subsystem was initialized, this object will contain + a value of zero." + ::= {dsIntEntry 3} + + dsTimeOfLastAttempt OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " The value of sysUpTime when the last attempt was made + to contact this DS. If the last attempt was made before + the network management subsystem was initialized, this + object will contain a value of zero." + ::= {dsIntEntry 4} + + dsTimeOfLastSuccess OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " The value of sysUpTime when the last attempt made to + contact this DS was successful. If there have + been no successful attempts this entry will have a value + of zero. If the last successful attempt was made before + the network management subsystem was initialized, this + object will contain a value of zero." + ::= {dsIntEntry 5} + + dsFailuresSinceLastSuccess OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " The number of failures since the last time an + attempt to contact this DS was successful. If + there has been no successful attempts, this counter + will contain the number of failures since this entry + was created." + ::= {dsIntEntry 6} + + dsFailures OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Cumulative failures since the creation of + this entry." + ::= {dsIntEntry 7} + + dsSuccesses OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Cumulative successes since the creation of + this entry." + ::= {dsIntEntry 8} + + dsURL OBJECT-TYPE + SYNTAX URLString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " URL of the DS application." + ::= {dsIntEntry 9} + +-- +-- Information about this installation of the directory server +-- + + dsEntityTable OBJECT-TYPE + SYNTAX SEQUENCE OF DsEntityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table holds general information related to an installed + instance of a directory server" + ::= {rhds 5} + + dsEntityEntry OBJECT-TYPE + SYNTAX DsEntityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Entry of general information about an installed instance + of a directory server" + INDEX { applIndex} + ::= {dsEntityTable 1} + + DsEntityEntry ::= SEQUENCE { + dsEntityDescr + DisplayString, + dsEntityVers + DisplayString, + dsEntityOrg + DisplayString, + dsEntityLocation + DisplayString, + dsEntityContact + DisplayString, + dsEntityName + DisplayString + } + + dsEntityDescr OBJECT-TYPE + SYNTAX DisplayString(SIZE (0..255)) + ACCESS read-only + STATUS mandatory + DESCRIPTION + "A general textual description of this directory server." + ::= {dsEntityEntry 1} + + dsEntityVers OBJECT-TYPE + SYNTAX DisplayString(SIZE (0..255)) + ACCESS read-only + STATUS mandatory + DESCRIPTION + "The version of this directory server" + ::={dsEntityEntry 2} + + dsEntityOrg OBJECT-TYPE + SYNTAX DisplayString(SIZE (0..255)) + ACCESS read-only + STATUS mandatory + DESCRIPTION + "Organization responsible for directory server at this installation" + ::={dsEntityEntry 3} + + dsEntityLocation OBJECT-TYPE + SYNTAX DisplayString(SIZE (0..255)) + ACCESS read-only + STATUS mandatory + DESCRIPTION + "Physical location of this entity (directory server). + For example: hostname, building number, lab number, etc." + ::={dsEntityEntry 4} + + dsEntityContact OBJECT-TYPE + SYNTAX DisplayString(SIZE (0..255)) + ACCESS read-only + STATUS mandatory + DESCRIPTION + "Contact person(s)responsible for the directory server at this + installation, together with information on how to conact." + ::={dsEntityEntry 5} + + dsEntityName OBJECT-TYPE + SYNTAX DisplayString(SIZE (0..255)) + ACCESS read-only + STATUS mandatory + DESCRIPTION + "Name assigned to this entity at the installation site" + ::={dsEntityEntry 6} + +-- +-- Traps +-- +-- + DirectoryServerDown TRAP-TYPE + ENTERPRISE redhat + VARIABLES { dsEntityDescr, dsEntityVers, dsEntityLocation, + dsEntityContact } + DESCRIPTION "This trap is generated whenever the agent detects the + directory server to be (potentially) Down." + ::= 6001 + + DirectoryServerStart TRAP-TYPE + ENTERPRISE redhat + VARIABLES { dsEntityDescr, dsEntityVers, dsEntityLocation } + DESCRIPTION "This trap is generated whenever the agent detects the + directory server to have (re)started." + ::= 6002 + + END + |