10.8. Xform predefinite¶
Le espressioni Xform possono essere complesse e ripetitive.
Sanet permette di assegnare alle espressioni xform degli alias utilizzabili al posto dell'espressione vera e propria.
Esempio di xform per le valie tipologie di nodo:
Interfacce
ifdescr byRegexpUnique(1.3.6.1.2.1.2.2.1.2@, '^' + $distinguisher + '$') byRegexpUnique(1.3.6.1.2.1.2.2.1.2@, "^" + $distinguisher + "$")Storage
storagedescr byRegexpUnique(1.3.6.1.2.1.25.2.3.1.3@, '^' + $distinguisher)Processi
procdescr byRegexpUnique(1.3.6.1.2.1.25.4.2.1.2@, '^' + $distinguisher + '$') procdescrargs byMultiRegexpUnique( 1.3.6.1.2.1.25.4.2.1@ , '4', 's/' + strsplit($distinguisher,' ')[0], '5', 's/' + strsplit($distinguisher, ' ',1)[1] )Device
hpsensdescr' byRegexpUnique(1.3.6.1.4.1.11.2.14.11.1.2.6.1.7@, '^' + $distinguisher + '$')
10.8.1. Definire nuovi alias XForm¶
Gli alias sono configurabili tramite CLI nella sezione "global-config", quindi sono usabili in tutti i tenant.
Per l'Xform e' possibile specificare un nome che verra' usato al posto dell'espressione, l'espressione princiaple ad esso associata e altre espressioni secondarie che possono essere associate al nome.
Di seguito un esempio di configurazione degli xform:
xform-<tipo> <name> expr <espressione> description <description> alias <espressione alternativa 1> alias <espressione alternativa 2> alias ... alias <espressione alternativa N> exit
Esempio:
Dove tipo puo' essere "interface", "storage", "service", e "device":
xform-interface ifdescr expr "byRegexpUnique(1.3.6.1.2.1.2.2.1.2@, '^'+re_escape($distinguisher)+'$')" alias "byRegexpUnique(1.3.6.1.2.1.2.2.1.2@, '^'+$distinguisher+'$')" alias "byRegexpUnique(1.3.6.1.2.1.2.2.1.2@, \"^\"+re_escape($distinguisher)+\"$\")" alias "byRegexpUnique(1.3.6.1.2.1.2.2.1.2@, \"^\"+$distinguisher+\"$\")" exit xform-service procdescrargs expr "byMultiRegexpUnique( 1.3.6.1.2.1.25.4.2.1@ , '4', 's/'+re_escape(strsplit($distinguisher,' ')[0]), '5', 's/'+re_escape(strsplit($distinguisher, ' ',1)[1]) ) " exit
Documentazione per creazione alias xform: Xform