APPUNTI SUL DRIVER SNMP AGENT DI JSUP (BOZZA) ------------------------------------------------------------------------------ E' possibile specificare il tipo di variabile SNMP da associare ad un [I/O hook] aggiungendo all'item il carattere '=' e una delle seguenti lettere: * i - Integer32 (default per [tag] di tipo Bool, Byte, Short, Int, Float e Double) * u - Unsigned32 / Gauge / Gauge32 * q - Counter64 (default per [tag] di tipo Long) * s - OctetString (default per [tag] di tipo String e FLString) * t - TimeTicks * x - Hexadecimal representation of a string * d - Decimal representation of a string * t - Binaryrepresentation of a string * o - OID * a - IpAddress 1. Esposizione di tutti gli allarmi via SNMP Agent Questa funzione richiede un'apposita licenza ed è attivabile compilando il campo All alarm info root OID nel dialogo Agent properties. Questo OID, come standard, è 1.3.6.1.4.1.42591.1.4.x.100 dove x è il [nr. corrispondente all'applicazione JSup]. A questo OID base vengono aggiunti i seguenti numeri: * l'ID del tag (shared) cui l'allarme fa riferimento; * il progressivo dell'allarme (per allarmi booleani verrà aggiunto solo .1, per tag analogici saranno aggiunti .2, .3, .4 e/o .5 per gli allarmi LL, L, H e HH rispettivamente). Nel caso di allarmi basati su BitField, aggiungere (bitFieldStart+1)<<8; * per ogni valore scalare fornito con ciascun allarme viene aggiunto il seguente numero corrispondente: * 1. tagId (OctetString): il nome del tag JSup * 2. uniqueAlarmId (OctetString): id unico dell'allarme * 3. desc (OctetString): la descrizione dell'allarme * 4. active (Integer32): stato attivo dell'allarme (1) o non attivo (0) * 5. activeFrom (TimeTicks): hundredths of a second from the alarm activation: 0 se l'allarme non è attivo, max 4294967295L. * 6. unack (Integer32): l'allarme dev'essere acquisito (1) o meno (0). Questo valore può essere abilitato in scrittura per permettere l'acquisizione dell'allarme da parte del SNMP Manager: per far questo bisogna impostare a 1 la proprietà snmpAgent.allAlarm.canBeAck per un singolo [tag] o per un [gruppo allarmi]. Si possono anche impostare le seguenti [proprietà dell'applicazione]: * snmpAgent.allAlarm.ackUser: il nome utente che comparirà come autore dell'acquisizione (per esempio Nagios); * snmpAgent.allAlarm.ackComment: il commento per l'acquisizione (per esempio "Acquisisto da Nagios"); * snmpAgent.allAlarm.ackHostName: il nome host dal quale risulterà originata l'acquisizione degli allarmi via SNMP agent. * 7. suppressed (Integer32): l'allarme è stato soppresso (1: non viene notificato tra gli allarmi attivi/da acquisire) oppure no (0) * 8. suppressExpireTime (Counter64): con l'ora in formato currentTimeMillis() in cui la soppressione utente verrà tolta automaticamente (millisecondi dalla mezzanotte del primo gennaio 1970 UTC) * 9. disabled (Integer32): l'allarme è stato disabilitato (1: non viene mai attivato) o meno (0) * 10. disableExpireTime (Counter64): con l'ora in formato currentTimeMillis() in cui la disabilitazione utente verrà tolta automaticamente * 11. alarmGroup (OctetString): stringa con il nome del gruppo allarmi di appartenenza. * 12. priority (Integer32): valore da 1 (priorità massima) a 99 (priorità minima) dell'allarme. * 13. rawSignal (Integer32): segnale grezzo (non filtrato né mascherato) sul quale l'allarme è basato (questo segnale viene alzato (1) o abbassato (0) immediatamente, indipendentemente dagli eventuali tempi di filtro on/off o delle condizioni di mascheratura). * 14. activationTime (Counter64): con l'ora in formato currentTimeMillis() in cui l'allarme si è attivato, 0 se l'allarme non è attualmente attivo.