[SNMP4J] Notification filtering

Frank Fock fock at agentpp.com
Thu Feb 2 08:25:43 CET 2006


OK, sorry. That's a regression. The index definition should be

  private static MOTableSubIndex[] snmpNotifyEntryIndexes =
    new MOTableSubIndex[] {
        new MOTableSubIndex(SMIConstants.SYNTAX_OCTET_STRING, 1, 32)
  };

  private static MOTableIndex snmpNotifyEntryIndex =
      new MOTableIndex(snmpNotifyEntryIndexes, true);

I probably mixed up snmpNotifyEntry and snmpNotifyFilterEntry when
I tried to fix another problem (I have not tested this code yet).

Best regards,
Frank

Matthias Wiesmann wrote:

>Hello,
>
>I downloaded your code, but it basically broke the part of my code
>that registers regulars notification entries. I had a look at the
>source code, it seems that you changed the index definition for
>notification entries.
>
>The new definition is:
>
>private static MOTableSubIndex[] snmpNotifyEntryIndexes =
>    new MOTableSubIndex[] {
>        new MOTableSubIndex(SMIConstants.SYNTAX_OCTET_STRING, 1, 32),
>        new MOTableSubIndex(SMIConstants.SYNTAX_OBJECT_IDENTIFIER, 0, 128)
>  };
>
>This is really wierd for me. As far as I know, notification entries
>are indexed by name and nothing else.
>
>If you look up RFC 2573
>
>The definition is
>
>----
>   snmpNotifyEntry OBJECT-TYPE
>       SYNTAX      SnmpNotifyEntry
>       MAX-ACCESS  not-accessible
>       STATUS      current
>       DESCRIPTION "blah-blah"
>       INDEX { IMPLIED snmpNotifyName }
>       ::= { snmpNotifyTable 1 }
>----
>
>Best regards
>
>Matthias Wiesmann
>
>
>On 02/02/06, Frank Fock <fock at agentpp.com> wrote:
>  
>
>>Hello Matthias,
>>
>>There are several bugs in this area in the current alpha release.
>>I have uploaded the current version of SnmpNotificationMib.java
>>to http://www.snmp4j.org/SnmpNotificationMib.java
>>
>>Best regards,
>>Frank
>>
>>
>>Matthias Wiesmann wrote:
>>
>>    
>>
>>>Hello everybody
>>>
>>>I have a situation that I don't understand with notification filters.
>>>I have installed a notification filter, but the notification mechanism
>>>seems not to see it.
>>>
>>>Here is the state of my filtertable
>>>
>>>SNMP-NOTIFICATION-MIB::snmpNotifyFilterProfileName.'hb-kt-dhcp22.jaist.ac.jp'
>>>= STRING: hb-kt-dhcp22.jaist.ac.jp
>>>SNMP-NOTIFICATION-MIB::snmpNotifyFilterProfileStorType.'hb-kt-dhcp22.jaist.ac.jp'
>>>= INTEGER: nonVolatile(3)
>>>SNMP-NOTIFICATION-MIB::snmpNotifyFilterProfileRowStatus.'hb-kt-dhcp22.jaist.ac.jp'
>>>= INTEGER: active(1)
>>>SNMP-NOTIFICATION-MIB::snmpNotifyFilterMask."hb-kt-dhcp22.jaist.ac.jp".1.3.6.1.4.1.999.1.2.1.104.98.45.107.116.45.100.104.99.112.50.50.46.106.97.105.115.116.46.97.99.46.106.112
>>>= ""
>>>SNMP-NOTIFICATION-MIB::snmpNotifyFilterType."hb-kt-dhcp22.jaist.ac.jp".1.3.6.1.4.1.999.1.2.1.104.98.45.107.116.45.100.104.99.112.50.50.46.106.97.105.115.116.46.97.99.46.106.112
>>>= INTEGER: included(1)
>>>SNMP-NOTIFICATION-MIB::snmpNotifyFilterStorageType."hb-kt-dhcp22.jaist.ac.jp".1.3.6.1.4.1.999.1.2.1.104.98.45.107.116.45.100.104.99.112.50.50.46.106.97.105.115.116.46.97.99.46.106.112
>>>= INTEGER: nonVolatile(3)
>>>SNMP-NOTIFICATION-MIB::snmpNotifyFilterRowStatus."hb-kt-dhcp22.jaist.ac.jp".1.3.6.1.4.1.999.1.2.1.104.98.45.107.116.45.100.104.99.112.50.50.46.106.97.105.115.116.46.97.99.46.106.112
>>>= INTEGER: active(1)
>>>
>>>I have modified the SnmpNotificationMIB:passesFilter to give me some
>>>output information.
>>>
>>>public boolean passesFilter(OID paramsIndex, OID notificationID,
>>>                             VariableBinding[] vbs) {
>>>   MOTableRowFilter activeFilter =
>>>       new RowStatus.ActiveRowsFilter(idxSnmpNotifyFilterProfileRowStatus);
>>>   List profiles =
>>>       snmpNotifyFilterProfileEntryModel.getRows(paramsIndex, paramsIndex,
>>>                                                 activeFilter);
>>>   if (profiles.size() == 0) {
>>>      final OctetString params = new
>>>OctetString(MOTableIndex.getBytes(paramsIndex)) ;
>>>      logger.info("found not matching profile for "+params+" / "+notificationID) ;
>>>     // no profile -> passes filter
>>>
>>>     return true;
>>>   }
>>>
>>>But when i run my code, I get this output
>>>
>>>found not matching profile for hb-kt-dhcp22.jaist.ac.jp /
>>>1.3.6.1.4.1.999.1.2.1.104.98.45.107.116.45.100.104.99.112.50.50.46.106.97.105.115.116.46.97.99.46.106.112
>>>
>>>I don't understand why the notification mechanism cannot see my profile.
>>>
>>>Does anybody have any idea?
>>>
>>>Cheers
>>>
>>>Matthias Wiesmann
>>>_______________________________________________
>>>SNMP4J mailing list
>>>SNMP4J at agentpp.org
>>>http://lists.agentpp.org/mailman/listinfo/snmp4j
>>>
>>>
>>>
>>>
>>>      
>>>
>>--
>>AGENT++
>>http://www.agentpp.com
>>http://www.mibexplorer.com
>>http://www.mibdesigner.com
>>
>>
>>
>>    
>>
>
>
>  
>


-- 
AGENT++
http://www.agentpp.com
http://www.mibexplorer.com
http://www.mibdesigner.com





More information about the SNMP4J mailing list