[SNMP4J] A question about getTable
Enrique J. Garcia Diaz
egdiaz at gmail.com
Wed Aug 13 18:42:48 CEST 2008
Hi Frank,
You are right... It should be a bug of net-snmp agent because I have proved
with Microsoft snmp agent and it works perfectly. The problem I have now is
that I should find a platform independent snmp agent because my project
should run in windows and linux...
Thanks everybody for the replies!!
BR,
Kike
2008/8/13 Frank Fock <fock at agentpp.com>
> Maybe you need to increase the timeout value
> or check if the agent has a bug regarding
> lexicographic ordering, which is often
> the case in conjunction with the tcpConnTable.
>
> Also the PDU size might impose a problem here.
> But that would be also an agent bug.
>
> Best regards,
> Frank
>
> Enrique J. Garcia Diaz wrote:
>
>> Hi Frank,
>>
>> Thank you for your advice. I have tried without a dot at the beginning but
>> the result is the same. Anyway, i am going to use the standard from now.
>>
>> Maybe I make a mistake and the problem is not where I am thinking... I do
>> not know, do you think that is correct my approach?
>>
>> Thnks, BR,
>> Kike
>>
>> 2008/8/13 Frank Fock <fock at agentpp.com <mailto:fock at agentpp.com>>
>>
>>
>> Hi Kike,
>>
>> OIDs do not start with a dot! This is some
>> stupid notation from NET-SNMP which is
>> non-standard. Try "1.3.6.1.2.1.6.13.1.1"
>> instead.
>>
>>
>> Best regards,
>> Frank
>>
>> Enrique J. Garcia Diaz wrote:
>>
>> Hi Frank,
>>
>> I am going to try to explain better my question...
>>
>> I have implemented a method that returns a list with the rows of
>> any table. The method is called getTable and the code is below.
>>
>> public List getTable(String[] oid) {
>> try {
>> snmp.listen();
>> }
>> catch (IOException e) {
>> e.printStackTrace();
>> }
>> TableUtils utils = new TableUtils(snmp, new
>> DefaultPDUFactory());
>> OID lowerIndex = null;
>> OID upperIndex = null;
>> OID[] arr = new OID[oid.length];
>> for (int i=0; i<oid.length; i++) arr[i] = new OID(oid[i]);
>> List list = utils.getTable(target, arr,
>> lowerIndex, upperIndex);
>> return list;
>> }
>>
>> The input of this method is an array of String that represents
>> the OIDs. In the case of the table TcpConnTable (from RFC1213)
>> the array contains the following values:
>>
>> String [] tcpConnTable = { ".1.3.6.1.2.1.6.13.1.1",
>> ".1.3.6.1.2.1.6.13.1.2", ".1.3.6.1.2.1.6.13.1.3",
>> ".1.3.6.1.2.1.6.13.1.4", ".1.3.6.1.2.1.6.13.1.5" };
>>
>> ".1.3.6.1.2.1.6.13.1.1" belongs to tcpConnState,
>> ".1.3.6.1.2.1.6.13.1.2" belongs to tcpConnLocalAddress, etc.
>>
>> The returned value of this method in the case of TcpConnTable is
>> not valid (is null) and nullPointerException is thrown.
>>
>> I have found some cases that the method returns valid values.
>> For example if I call the method with the following array of
>> String:
>> String [] hrSWRunTable = { ".1.3.6.1.2.1.25.4.2.1.1",
>> ".1.3.6.1.2.1.25.4.2.1.2", ".1.3.6.1.2.1.25.4.2.1.3",
>> ".1.3.6.1.2.1.25.4.2.1.4", ".1.3.6.1.2.1.25.4.2.1.5",
>> ".1.3.6.1.2.1.25.4.2.1.6", ".1.3.6.1.2.1.25.4.2.1.7" }
>>
>> where,
>> ".1.3.6.1.2.1.25.4.2.1.1" belongs to hrSWRunIndex (from
>> HOST_RESOURCES), ".1.3.6.1.2.1.25.4.2.1.2" belongs to
>> hrSWRunName, etc.
>>
>> So, I think that the problem is that I am not able to call this
>> method with the correct array of String that belongs of the list
>> of OIDs of the columns in the table. I have found with a MIB
>> browser that there is a OIDs like I wrote in my previous mail
>> (.1.3.6.1.2.1.6.13.1.1.127.0.0.
>> 1.27015.127.0.0.1.1093).
>>
>> Then, I would like to know if I am doing something wrong and how
>> people retrieve data from a table like TcpConnTable.
>>
>> I hope I have explained better with this mail.
>>
>> Thanks and BR,
>> Kike
>>
>>
>> 2008/8/12 Frank Fock <fock at agentpp.com <mailto:fock at agentpp.com>
>> <mailto:fock at agentpp.com <mailto:fock at agentpp.com>>>
>>
>>
>>
>> Hello Kike,
>>
>> What exactly is the problem?
>>
>> Best regards,
>> Frank
>>
>>
>> Enrique J. Garcia Diaz wrote:
>>
>> Hello everybody!
>>
>> I have tried to look for an answer first to previous
>> messages but,
>> unfortunately I have not found anything that clarify me.
>> So, I
>> apologize if
>> this is not the best place to ask or if someone has asked
>> before.
>>
>> My problem is that I want to make a program that retrieve
>> SNMP
>> information.
>> In particular, I have some problems retrieving information
>> in
>> some tables,
>> in particular, TcpConnTable (RFC1213).
>>
>> The problem is that if I use getTable method (in
>> org.snmp4j.util.TableUtils), I do not receive the data of
>> the
>> tables. The
>> reason is because some OIDs are something like this:
>> .1.3.6.1.2.1.6.13.1.1.127.0.0.1.27015.127.0.0.1.1093,
>> where the
>> last fields
>> are my IP address and the listened port (info that it is
>> likely
>> that I do
>> not know)
>>
>> So, I am not able to retrieve TcpConnTable using SNMP4J.
>> Anybody
>> has any
>> suggestions? How can I get these variables?
>>
>> I have tried to use GetNext and GetBulk methods but the
>> problem
>> is the same,
>> I do not know the exact name of the OID that I want to
>> retrieve.
>> I hope I
>> have expressed correctly the problem and everybody
>> understand it.
>>
>> Thanks in advanced,
>> Kike
>> _______________________________________________
>> SNMP4J mailing list
>> SNMP4J at agentpp.org <mailto:SNMP4J at agentpp.org>
>> <mailto:SNMP4J at agentpp.org <mailto: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
>>
>>
>>
> --
> AGENT++
> http://www.agentpp.com
> http://www.mibexplorer.com
> http://www.mibdesigner.com
>
>
More information about the SNMP4J
mailing list