10.15. Esempi

10.15.1. Datagroup template per testare il contento di un file

datagroup-template test

    minperiod 0

    title "datagroup di test"

    condition c

        title "condition di test"

        expr "int(readFile('/tmp/test.txt')) == 1"
        max-tries 1
        msg-upbody UP body
        msg-upsubj [UP] soggetto
        msg-downbody DOWN body
        msg-downsubj [DOWN] soggetto

    exit

exit

10.16. Test con estensioni a SNMPD

Configurazione SNMPD:

rocommunity public

group     public    v1   public

# Estensione SNMP che legge da un file
extend test /bin/cat /tmp/temp.txt

Note

questo e' solo un esempio di configurazione e potrebbe non funzionare in tutte le situazioni.

Configurazione in Sanet:

datagroup-template testsnmpd
    shorttries 1
    minperiod 0

    title "Test"

    datasource value
        expr "1.3.6.1.4.1.8072.1.3.2.3.1.1.4.str2oid('test')@"
    exit

    condition test

        title "Test"

        expr "(int({value@}) > 0"
        max-tries 1
    exit
exit


node localhost
   datagroup testsnmpd
   exit
exit

10.16.1. Come controllare la presenza di processi/dischi/ecc. usando isDefined()

Datagroup:

datagroup-template monitor-process
    condition ispresent
        expr isDefined('$swrunindex')
    exit
exit

datagroup-template monitor-storage
    condition ispresent
        expr isDefined('$stindex')
    exit
exit

Configurazione di prova:

node localhost
    storage rootfs distinguisher / xform storagedescr
        datagroup monitor-storage
        exit
    exit

    storage prova distinguisher pippo xform storagedescr
        datagroup monitor-storage
        exit
    exit

    service snmpd distinguisher "/usr/local/sbin/snmpd -c /etc/snmp/snmpd.conf" xform procdescrargs
        datagroup monitor-process
        exit
    exit

    service apache distinguisher "apache prova" xform procdescrargs
        datagroup monitor-process
        exit
    exit

exit