From b1a83de33a2dcfaa7cc41842a04473697f8630b7 Mon Sep 17 00:00:00 2001 From: Andre Lorbach Date: Wed, 5 Mar 2008 17:23:52 +0000 Subject: Updated the Adiscon MIBs, they contain a few more definitions for variables and traps now. The default syslogmessage oid had to change again, as I had to reorganize the snmp variables. --- doc/omsnmp.html | 4 +- plugins/omsnmp/mibs/ADISCON-MONITORWARE-MIB.txt | 250 +++++++++++++++++++++++- plugins/omsnmp/omsnmp.c | 4 +- 3 files changed, 249 insertions(+), 9 deletions(-) diff --git a/doc/omsnmp.html b/doc/omsnmp.html index 4087d830..5b10bd9e 100644 --- a/doc/omsnmp.html +++ b/doc/omsnmp.html @@ -89,7 +89,7 @@ developer (headers) package installed.

  • $actionsnmpsyslogmessageoid (This parameter is - optional, the default value is "1.3.6.1.4.1.19406.1.1.1" which means + optional, the default value is "1.3.6.1.4.1.19406.1.1.2.1" which means "ADISCON-MONITORWARE-MIB::syslogMsg")

    This OID will be used as a variable, type "OCTET STRING". This variable will @@ -100,7 +100,7 @@ developer (headers) package installed.

    To download these custom mibs, see the description of $actionsnmptrapoid.

    - Example: $actionsnmpsyslogmessageoid 1.3.6.1.4.1.19406.1.1.1
    + Example: $actionsnmpsyslogmessageoid 1.3.6.1.4.1.19406.1.1.2.1
    If you have this MIBS installed, you can also configured with the OID Name: $actionsnmpsyslogmessageoid ADISCON-MONITORWARE-MIB::syslogMsg
    diff --git a/plugins/omsnmp/mibs/ADISCON-MONITORWARE-MIB.txt b/plugins/omsnmp/mibs/ADISCON-MONITORWARE-MIB.txt index 7ba54cf0..d26d7746 100644 --- a/plugins/omsnmp/mibs/ADISCON-MONITORWARE-MIB.txt +++ b/plugins/omsnmp/mibs/ADISCON-MONITORWARE-MIB.txt @@ -20,7 +20,7 @@ IMPORTS ; monitorware MODULE-IDENTITY - LAST-UPDATED "200803040000Z" + LAST-UPDATED "200803050000Z" ORGANIZATION "www.adiscon-com" CONTACT-INFO "postal: Adiscon GmbH @@ -32,12 +32,16 @@ monitorware MODULE-IDENTITY DESCRIPTION "This MIB defines traps and variables to wrap syslog messages into snmp traps." REVISION "200803040000Z" + DESCRIPTION + "Added a few new variables for the representation of MonitorWare properties. Also added a few new traps." + REVISION "200803050000Z" DESCRIPTION "First draft" ::= { adiscon 1 } -- Printable string, using the ISO 8859-1 character set. DisplayString ::= OCTET STRING (SIZE (0..255)) +SmallString ::= OCTET STRING (SIZE (0..64)) -- -- @@ -47,6 +51,11 @@ DisplayString ::= OCTET STRING (SIZE (0..255)) monitorware OBJECT IDENTIFIER ::= { adiscon 1 } monitorwarevars OBJECT IDENTIFIER ::= { monitorware 1 } monitorwaretraps OBJECT IDENTIFIER ::= { monitorware 2 } +genericvars OBJECT IDENTIFIER ::= { monitorwarevars 1 } +syslogvars OBJECT IDENTIFIER ::= { monitorwarevars 2 } +eventlogvars OBJECT IDENTIFIER ::= { monitorwarevars 3 } +filemonvars OBJECT IDENTIFIER ::= { monitorwarevars 4 } +ntservicemonvars OBJECT IDENTIFIER ::= { monitorwarevars 5 } -- ***************************************************************** -- Trap variables @@ -59,7 +68,7 @@ syslogMsg OBJECT-TYPE DESCRIPTION "Syslog Message, this will contain the full syslog message including the full syslog header" - ::= { monitorwarevars 1 } + ::= { syslogvars 1 } syslogSeverity OBJECT-TYPE SYNTAX INTEGER { @@ -76,7 +85,8 @@ syslogSeverity OBJECT-TYPE STATUS current DESCRIPTION "Syslog severity(priority)." - ::= { monitorwarevars 2 } + DEFVAL { 5 } + ::= { syslogvars 2 } syslogFacility OBJECT-TYPE SYNTAX INTEGER { @@ -103,7 +113,187 @@ syslogFacility OBJECT-TYPE STATUS current DESCRIPTION "Syslog facility." - ::= { monitorwarevars 3 } + DEFVAL { 16 } + ::= { syslogvars 3 } + +syslogTag OBJECT-TYPE + SYNTAX SmallString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Contains the SyslogTag Value." + ::= { syslogvars 4 } + +genCustomerID OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Generic Property CustomerID." + ::= { genericvars 1 } + +genSystemID OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Generic Property SystemID." + ::= { genericvars 2 } + +genSource OBJECT-TYPE + SYNTAX SmallString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Generic Source Property." + ::= { genericvars 3 } + +genTimereported OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Timestamp of when the event was reported." + ::= { genericvars 4 } + +genTimegenerated OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Timestamp of when the event was generated." + ::= { genericvars 5 } + +genIut OBJECT-TYPE + SYNTAX INTEGER { + Unknown (0), + Syslog (1), + Heartbeat (2), + NTEventReport (3), + SNMPTrap (4), + FileMonitor (5), + PingProbe (8), + PortProbe (9), + NTServiceMonitor (10), + DiskSpaceMonitor (11), + DBMonitor (12), + SerialMonitor (13), + CPUMonitor (14), + AliveMonRequest (16), + SMTPProbe (17), + FTPProbe (18), + HTTPProbe (19), + POP3Probe (20), + IMAPProbe (21), + NNTPProbe (22), + WEVTMONV2 (23), + SMTPLISTENER (24), + SNMPMONITOR (25), + AliveMonECHO (1999998) + } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "InfoUnit TypeID, defines from which Source the event is derived from." + DEFVAL { 0 } + ::= { genericvars 6 } + +genMsg OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Generic Message for this event" + ::= { genericvars 7 } + +eventlogEventID OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "EventID of the EventLog Entry" + ::= { eventlogvars 1 } + +eventlogEventType OBJECT-TYPE + SYNTAX SmallString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "EventLog Type of the EventLog Entry (Like Application, Security or System)" + ::= { eventlogvars 2 } + +eventlogEventSource OBJECT-TYPE + SYNTAX SmallString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "EventLog Source of the EventLog Entry" + ::= { eventlogvars 3 } + +eventlogEventCategoryID OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Event Category number of the EventLog Entry" + ::= { eventlogvars 4 } + +eventlogEventCategoryName OBJECT-TYPE + SYNTAX SmallString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Event Category name of the EventLog Entry" + ::= { eventlogvars 5 } + +eventlogEventUser OBJECT-TYPE + SYNTAX SmallString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Event User of the EventLog Entry" + ::= { eventlogvars 6 } + +filemonGenericFilename OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Generic Filename template used to create the filename" + ::= { filemonvars 1 } + +filemonGeneratedFilename OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Generated Filename, the source file of this event." + ::= { filemonvars 2 } + +filemonMsgseperator OBJECT-TYPE + SYNTAX SmallString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "The message seperator which was used." + ::= { filemonvars 3 } + +ntserviceServiceName OBJECT-TYPE + SYNTAX SmallString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Internal Name of the monitored service." + ::= { ntservicemonvars 1 } + +ntserviceServiceDisplayName OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Display Name of the monitored service." + ::= { ntservicemonvars 2 } + -- ***************************************************************** -- Trap definitions @@ -116,7 +306,57 @@ syslogtrap NOTIFICATION-TYPE } STATUS current DESCRIPTION - "Syslogmessage Trap from monitorware." + "Syslogmessage Trap." ::= { monitorwaretraps 1 } +monitorwaretrap NOTIFICATION-TYPE + OBJECTS { genMsg, + genSource, + genTimegenerated, + genIut + } + STATUS current + DESCRIPTION + "Generic Trap from monitorware events." +::= { monitorwaretraps 2 } + +eventmontrap NOTIFICATION-TYPE + OBJECTS { genMsg, + genSource, + eventlogEventID, + eventlogEventType, + eventlogEventSource, + eventlogEventCategoryID, + eventlogEventCategoryName, + eventlogEventUser + } + STATUS current + DESCRIPTION + "Trap generated by the EventLog Monitor." +::= { monitorwaretraps 3 } + +filemontrap NOTIFICATION-TYPE + OBJECTS { genMsg, + genSource, + genTimegenerated, + filemonGenericFilename, + filemonGeneratedFilename + } + STATUS current + DESCRIPTION + "Trap generated by the FileMonitor." +::= { monitorwaretraps 4 } + +ntservicetrap NOTIFICATION-TYPE + OBJECTS { genMsg, + genSource, + genTimegenerated, + ntserviceServiceName, + ntserviceServiceDisplayName + } + STATUS current + DESCRIPTION + "Trap generated by the NT Service Monitor." +::= { monitorwaretraps 5 } + END diff --git a/plugins/omsnmp/omsnmp.c b/plugins/omsnmp/omsnmp.c index d7c8950c..c3afb5d4 100644 --- a/plugins/omsnmp/omsnmp.c +++ b/plugins/omsnmp/omsnmp.c @@ -90,7 +90,7 @@ typedef struct _instanceData { uchar szCommunity[OMSNMP_MAXCOMMUNITYLENGHT+1]; /* Snmp Community */ uchar szEnterpriseOID[OMSNMP_MAXOIDLENGHT+1]; /* Snmp Enterprise OID - default is (1.3.6.1.4.1.3.1.1 = enterprises.cmu.1.1) */ uchar szSnmpTrapOID[OMSNMP_MAXOIDLENGHT+1]; /* Snmp Trap OID - default is (1.3.6.1.4.1.19406.1.2.1 = ADISCON-MONITORWARE-MIB::syslogtrap) */ - uchar szSyslogMessageOID[OMSNMP_MAXOIDLENGHT+1]; /* Snmp OID used for the Syslog Message - default is 1.3.6.1.4.1.19406.1.1.1 - ADISCON-MONITORWARE-MIB::syslogMsg + uchar szSyslogMessageOID[OMSNMP_MAXOIDLENGHT+1]; /* Snmp OID used for the Syslog Message - default is 1.3.6.1.4.1.19406.1.1.2.1 - ADISCON-MONITORWARE-MIB::syslogMsg * You will need the ADISCON-MONITORWARE-MIB and ADISCON-MIB mibs installed on the receiver side in order to decode this mib. * Downloads of these mib files can be found here: * http://www.adiscon.org/download/ADISCON-MONITORWARE-MIB.txt @@ -383,7 +383,7 @@ CODE_STD_STRING_REQUESTparseSelectorAct(1) /* Copy SyslogMessage OID */ if (pszSyslogMessageOID == NULL) /* Failsave */ - strncpy( (char*) pData->szSyslogMessageOID, "1.3.6.1.4.1.19406.1.1.1", sizeof("1.3.6.1.4.1.19406.1.1.1") ); + strncpy( (char*) pData->szSyslogMessageOID, "1.3.6.1.4.1.19406.1.1.2.1", sizeof("1.3.6.1.4.1.19406.1.1.2.1") ); else /* Copy Target */ strncpy( (char*) pData->szSyslogMessageOID, (char*) pszSyslogMessageOID, strlen((char*) pszSyslogMessageOID) ); -- cgit