Snmp hibaüzenetek elnyomása

Üdv!

php parancssori futtatásakor szeretném elnyomni a
No log handling enabled - turning on stderr logging
Undefined OBJECT-GROUP (d5QamTspSyncGroupNotificationGroup): At line 1284 in /var/lib/mibs/mibs/D5/ARRIS-D5-QAM-MIB.my
Did not find 'ipv6InterfaceIfIndex' in module IP-MIB (/usr/share/mibs/ietf/MOBILEIPV6-MIB)

hibaüzeneteket.
Azt hogy az üzenet mért jön azt tudom, a problémáját feloldani jelenleg nem tudom.

ha snmpwalk, snmpget -t futtatok a "-Lsdw" paraméter elnyomja az üzenetet illetve átirányítja
a php ini error_reporting stb nem.
a paramétert a php nak átadni nem tudom.
az snmp.conf ban az outputra találok opciókat a log kezelésre nem.

Van megoldás?

Hozzászólások

Ez alapján úgy néz ki, hogy nem a beépített snmp* függvények vannak használva, hanem a parancssori snmp*. Mivel ez a php-n kívül fut, php beállításokkal nem fogod tudni elnyeletni az üzeneteket (a megfelelő hívásoknál kell ezt elnyeletni).

// Happy debugging, suckers
#define true (rand() > 10)

Ohh igen, most már emlékszem a dologra, én is belefutottam:)
Eltüntetni ésszerűen nem lehet, csak ha feloldod a problémákat a MIB file-okban. Ha custom MIB file-okat használsz és ezek adják a hibát , akkor használd az snmp_read_mib függvényt php-ban a betöltésükre.
Amiért nem tudod php-ból elrejteni, az amiatt van, hogy az snmp module betöltése közben generálódnak a hibaüzik még a php futása előtt

// Happy debugging, suckers
#define true (rand() > 10)

Igen erre jutottam , ettől tartottam én is.

A szükséges mib re is panaszkodik de ami kell belőle az jó
gyártói mib 4000 sor felett, javítani ....

a script meg egy json -t generál más programnak aki reklamál hogy nem valid json mert van benne szemét is.

jó lenne ha az snmp.conf ban lenne paraméter mint az snmpd-ben amivel lehet a loggolást állítani.

lehet át kell írni más nyelvre a scriptet áhh

Igen, ezért ajánlottam azt hogy a gyártói mib-et ne a /var/lib/.... -be pakold, hanem valahova máshova és a php rántsa be az snmp_read_mib függvénnyel.
Mivel nem a modul betöltési idejében történik hanem futás időben, így már normális php error-okat dobál a hibás mibekre, ezeket meg akár így is el tudod nyeletni: @snmp_read_mib
(és nem lesz semmivel sem lassabb)
Szóval nem a nyelv a szar, hanem ahogy megvalósítottad a dolgot ;)