[ proc @ 17.02.2020. 07:10 ] @
Zdravo,

Nesto pravim za Grafana pa sam nasao Python pysnmp modul sa ugradjenim SNMP koji sam mislio adaptirati sa OID ... http://snmplabs.com/pysnmp/exa...mdgen/modifying-variables.html

Sve fercera ali bi htio promijeniti return ... naime preko scripta posaljem pitanje ka SNMP serveru u vidu OID i u "return" se ispise odgovor - u ovom slucaju wholeMsg ...

Code:
 
# noinspection PyUnusedLocal,PyUnusedLocal
def cbRecvFun(transportDispatcher, transportDomain, transportAddress,
              wholeMsg, reqPDU=reqPDU):
    while wholeMsg:
        rspMsg, wholeMsg = decoder.decode(wholeMsg, asn1Spec=pMod.Message())
        rspPDU = pMod.apiMessage.getPDU(rspMsg)
        # Match response to request
        if pMod.apiPDU.getRequestID(reqPDU) == pMod.apiPDU.getRequestID(rspPDU):
            # Check for SNMP errors reported
            errorStatus = pMod.apiPDU.getErrorStatus(rspPDU)
            if errorStatus:
                print(errorStatus.prettyPrint())
            else:
                for oid, val in pMod.apiPDU.getVarBinds(rspPDU):
                    print('%s = %s' % (oid.prettyPrint(), val.prettyPrint()))
            transportDispatcher.jobFinished(1)
    return wholeMsg


Interesira me kako bih mogao promijejiti return, da nekako postavljene OID (lista valjda ?) nekako prevedem kako ja hocu ... nesto kao neka "translate" funckija koja bi recimo bila npr umjesto .1.3.6.1.2.1.1.3.0 koje je OID za uptime - u return-u bilo samo uptime i value ... itd
Znam da postoje list u Python programiranju (nisam nikakav expert) ali bih bio zahvalan za neki prijedlog/pomoc oko ovog return koje me zakocilo fakat.

Hvala.
[ Branimir Maksimovic @ 17.02.2020. 07:44 ] @
Hoces da wholeMsg pakujes u listu za svaki rezultat decode f-je? Ne znam Python ali pretpostavljam
da nije neki problem napraviti listu tih stringova :P
[ proc @ 17.02.2020. 10:58 ] @
Pa otprilike ... kako si ti mislio da bi moglo ?