Difference between revisions of "SimpleGraph-SNMP"

From BITPlan Wiki
Jump to navigation Jump to search
Line 13: Line 13:
 
<source lang='java'>
 
<source lang='java'>
 
   String pageCount=".1.3.6.1.2.1.43.10.2.1.4.1";
 
   String pageCount=".1.3.6.1.2.1.43.10.2.1.4.1";
   String printer="printer.bitplan.com"; // replace with your printer's hostname
+
   String[] printers = { "printer1", "printer2", "printer3"}; // replace with your printer's hostnames
   SNMPSystem ss=new SNMPSystem();
+
   for (String printer:printers) {
  ss.connect(printer);
+
    SNMPSystem ss=new SNMPSystem();
  SimpleNode snmpNode=ss.moveTo(pageCount);
+
    ss.connect(printer);
  if (snmpNode != null) {
+
    SimpleNode snmpNode=ss.moveTo(pageCount);
        String pages = snmpNode.property("value").toString();
+
    if (snmpNode != null) {
        System.out.println(String.format("%40s %8s pages", printer, pages));
+
      String pages = snmpNode.property("value").toString();
 +
      System.out.println(String.format("%40s %8s pages", printer, pages));
 +
    }
 
   }
 
   }
 
</source>
 
</source>
 
=== Result ===
 
=== Result ===
 
<pre>
 
<pre>
   printer     16592 pages
+
   printer1     46592 pages
 +
  printer2    35713 pages
 +
  printer3    16905 pages
 
</pre>
 
</pre>
  

Revision as of 20:08, 20 February 2018

Snmp.png

SimpleGraph SNMP module

The SimpleGraph SNMP module makes Simple Network Monitoring Protocol accessible via SNMP4J see [ ].

Sources

Example

Goal

You'd like to find out the pageCounters of some printers in your network.

JUnit TestCase

  String pageCount=".1.3.6.1.2.1.43.10.2.1.4.1";
  String[] printers = { "printer1", "printer2", "printer3"}; // replace with your printer's hostnames
  for (String printer:printers) {
    SNMPSystem ss=new SNMPSystem();
    ss.connect(printer);
    SimpleNode snmpNode=ss.moveTo(pageCount);
    if (snmpNode != null) {
      String pages = snmpNode.property("value").toString();
      System.out.println(String.format("%40s %8s pages", printer, pages));
    }
  }

Result

   printer1     46592 pages
   printer2     35713 pages
   printer3     16905 pages

Explanation

The moveTo function will perform an SNMP walk on the given oid (and it's subtree) and make available the values converted as objects with the proper datatype.

Links