def get (ip,oid): """snmp get. Returns a the value requested as a string. """ s, o = getstatusoutput("%s %s -c %s %s %s " % ( GET_PATH,dict2optStr(SNMP_OPTIONS), COMMUNITY,ip,oid)) if s != 0: raise IOError , "query of %s at %s failed" % (oid,ip) else: return snmpConvert(o.strip().split(' = ')[1])
def walk (ip,oid,trimMIB=True): """snmp walk. Returns a list of (oid,stringValues). By default, returned oids have <MIB>:: trimmed off. """ s, o = getstatusoutput("%s %s -c %s %s %s " % ( WALK_PATH,dict2optStr(SNMP_OPTIONS), COMMUNITY,ip,oid)) if s != 0: raise IOError , "query of %s at %s failed" % (oid,ip) else: return [snmpConvert(l,trimMIB=trimMIB) for l in o.split('\n') if l.count(' = ') >0]