El preprocessament s'empra per definir regles de transformació dels valors dels elements rebuts. Són possibles una o més transformacions abans de desar a la base de dades.
Les transformacions s'executen en l'ordre en què es defineixen. El preprocessament el fa el servidor o proxy Zabbix (si els elements són monitorats per proxy).
Tingueu en compte que tots els valors passats al preprocessament són de tipus string, la conversió al tipus de valor esperat (tal com es defineix a la configuració de l'element) es fa al final de la canalització de preprocessament; no obstant això, les conversions també poden tindre lloc si ho requereix la passa de preprocessament corresponent. Veieu detalls del preprocessament per obtindre més informació tècnica.
Veieu també: Exemples d'ús
Les regles de preprocessament es defineixen a la pestanya Preprocessament del formulari configuració de l'element.
Un element es convertirà en no suportat si alguna de les passes de preprocessament falla, tret que s'hagi especificat la gestió d'errors personalitzada mitjançant una opció Personalitzada en cas d'error per a les transformacions admeses.
Per als elements del registre, les metadades del registre (sense valor) sempre restabliran l'estat no admès de l'element i tornaran a ser compatible amb l'element, fins i tot si l'error inicial es va produir després de rebre un valor de registre de l'agent.
Tant les macros d'usuari com les macros d'usuari amb context són compatibles amb:
El context s'ignora quan es substitueix una macro pel seu valor. El valor de la macro s'insereix tal com és al codi, no és possible afegir una escapada addicional abans de posar valor al codi JavaScript. Tingueu en compte que això pot provocar errors de JavaScript en alguns casos.
|Tipus|<|<| |-|-----------|-------------------------------------- ----| | |Transformació|Descripció| |Text|<|<| | |Expressió regular|Fa coincidir el valor amb l'expressió regular <patró> i substitueix el valor per <sortida>. L'expressió regular permet extreure un màxim de 10 grups capturats amb la seqüència \N. Si el valor d'entrada no coincideix, l'element no serà compatible.
Paràmetres:
patró - expressió regular
sortida - patró de format de sortida. Una seqüència d'escapada \N (on N=1...9) es substitueix pel grup enèssim corresponent. Una seqüència d'escapada \0 es substitueix pel text corresponent.
Consulteu la secció expressions regulars per veure alguns exemples existents.
Si marqueu el Personalitzat en cas d'error , l'element no serà compatible si la passa de preprocessament falla i és possible especificar opcions de gestió d'errors personalitzades: per ignorar el valor o per establir un valor especificat, o per establir un missatge d'error especificat.| |^|Reemplaça|Cerqueu la cadena de cerca i substituïu-la per una altra (o per res). Es substituiran totes les ocurrències de la cadena de cerca.
Paràmetres:
cadena de cerca - la cadena a cercar i substituir, distingeix entre majúscules i minúscules (obligatori)
** substituir** - la cadena a substituir amb la cadena de cerca. La cadena de substitució també pot ésser buida, la qual cosa permet esborrar la cadena de cerca quan la trobi.
És possible emprar seqüències d'escapada per cercar o substituir salts de línia, retorns de carro, tabulacions i espais "\n \r \ t \s"; la barra invertida es pot escapar com a "\\" i les seqüències d'escapament es poden escapar com a "\\n". Els salts de línia, els retorns de carro i les pestanyes s'escapen automàticament durant la descoberta de baix nivell.| |^|Retallar|Esborra els caràcters especificats al principi i al final del valor.| |^|Retalla a la dreta|Esborra els caràcters especificats del final del valor.| |^|Retalla a l'esquerra|Esborra els caràcters especificats del principi del valor.| |Dades estructurades|<|<| | |XPath XML|Extreu valor o fragment de dades XML mitjançant la funcionalitat XPath.
Per tal que aquesta opció funcioni, el servidor Zabbix s'ha de compilar amb suport libxml.
Exemples:< br>number(/document/item /value)
extreu 10
de <document><item><value>10</value></item></document>
number(/document/item/@attribute)
extreu 10
de <document><item attribute="10"></item></document>
/document/item
extreu <item><value> 10</value></item>
de <document><item><value>10</value></item></document>
Tingueu en compte que els espais de noms no són compatibles.
Si marqueu la casella de selecció Personalitzat en cas d'error, l'element no serà compatible si la passa de preprocessament falla i és possible especificar errors d'opcions de gestió personalitzades: per ignorar el valor, per establir un valor especificat o per establir un missatge d'error especificat.| |^|JSONPath|Extreu el valor o el fragment de les dades JSON mitjançant la funcionalitat JSONPath.
Si marqueu el Personalitzat en error, l'element no s'admetrà si la passa de preprocessament falla i és possible especificar opcions de gestió d'errors personalitzades: per ignorar el valor, per establir un valor especificat o per establir un missatge d'error especificat.| |^|CSV a JSON|Convertir les dades del fitxer CSV al format JSON.
Per obtindre més informació, consulteu: Preprocessament de CSV a JSON.| |^|XML a JSON|Convertir dades en format XML a JSON.
Per obtindre més informació, veieu: Regles de serialització.
Si marqueu la casella Personalitzat en cas d'error, l'element no serà compatible si la passa de preprocessament falla i és possible especificar errors d'opcions de gestió personalitzades: per ignorar el valor, per establir un valor especificat o per establir un missatge d'error especificat.| |SNMP|<|<| | |Valor SNMP Walk|Extreu el valor pel nom OID/MIB especificat i apliqueu les opcions de format:
Sense modificar - retorna la cadena hexadecimal com a cadena hexadecimal sense escapar;
UTF-8 des de hexadecimal- STRING: converteix la cadena hexadecimal en una cadena UTF-8;
MAC des de hex-STRING - valida la cadena hexadecimal com a adreça MAC i retorna una cadena d'adreça MAC adequada (on ' '
es substitueix per ':'
);
Enter de BITS - converteix els primers 8 octets d'una cadena de bits expressada com una seqüència de caràcters hexadecimals (per exemple, "1A 2B 3C 4D") en un nombre enter sense signe de 64 bits. En les cadenes de bits de més de 8 octets, els octets conseqüents s'ignoraran.
Si marqueu la casella de selecció Personalitzat en cas d'error, és possible triar opcions personalitzades de gestió d'errors: per descartar el valor, establir un valor especificat o establir un missatge d'error especificat. En el cas d'un pas de preprocessament fallit, l'element no serà compatible si se selecciona l'opció per descartar el valor o establir un valor especificat.| | |SNMP walk to JSON|Converteix els valors SNMP a JSON. Especifiqueu un nom de camp al JSON i la ruta d'OID SNMP corresponent. Els valors dels camps s'emplenaran amb els valors del camí d'accés SNMP OID especificat.
Podeu emprar aquesta passa de preprocessament per a SNMP OID discovery.
Opcions de format de valors semblants com a a la passa Valor de walk SNMP són disponibles.
Si marqueu la casella de selecció Personalitzat en cas d'error, és possible triar opcions personalitzades de gestió d'errors: per descartar el valor, establir un valor especificat o establir un missatge d'error especificat. En el cas d'una passa de preprocessament fallida, l'element no serà compatible si se selecciona l'opció per descartar el valor o establir un valor especificat.| |Aritmètica|<|<| | |Multiplicador personalitzat|Multiplica el valor per l'enter o el valor de coma flotant especificat.
Fes servir aquesta opció per convertir els valors rebuts a Ko, Mops, etc. en o, ops. En cas contrari, Zabbix no pot establir correctament prefixos (K, M, G, etc.).
Tingueu en compte que si el tipus d'element de dades és Numèric (sense signe), els valors entrants es retallaran amb una part fraccionària (és a dir, "0,9" es convertirà en "0") abans que s'apliqui el multiplicador personalitzat.
Suport: notació científica, per exemple, "1e+70" (des de la versió 2.2); macros d'usuari i macros LLD (des de la versió 4.0); cadenes que inclouen macros, per exemple, {#MACRO}e+10
, {$MACRO1}e+{$MACRO2}
(des de la versió 5.2.3)
Les macros s'han de resoldre en un nombre enter o flotant.< br>Si marqueu la casella de selecció Personalitzat en cas d'error, l'element no serà compatible si la passa de preprocessament falla i és possible especificar opcions per al tractament d'errors personalitzats: per ignorar el valor, establir un valor especificat o establir un missatge d'error especificat.| |Canvi|<|<| | |Canvi simple|Calculeu la diferència entre el valor actual i el valor anterior.
S'avalua com a valor-valor_anterior, on
valor - valor actual; valor_precedent - valor rebut anteriorment
Aquest paràmetre pot ser útil per mesurar un valor que augmenta constantment. Si el valor actual és inferior al valor anterior, Zabbix ignora aquesta diferència (no emmagatzema res) i espera un altre valor.
Només es permet una operació d'edició per element.
Si marqueu Personalitzar en cas d'error , l'element no serà compatible si la passa de preprocessament falla i és possible especificar opcions de gestió d'errors personalitzades: per ignorar el valor o per establir un valor especificat, o per establir un missatge d'error especificat.| |^|Canvi per segon|Calculeu la taxa de canvi de valor (diferència entre el valor actual i anterior) per segon.
Avaluat com a (valor-valor_anterior)/(temps-hora_anterior), on
valor - valor actual; previous_value - valor rebut anteriorment; time - marca de temps actual; time_previous - marca de temps del valor anterior.
Aquest paràmetre és molt útil per obtindre la velocitat per segon per a un valor que augmenta constantment. Si el valor actual és inferior al valor anterior, Zabbix ignora aquesta diferència (no emmagatzema res) i espera un altre valor. Això permet que funcioni bé, per exemple, amb embolcall de comptador SNMP de 32 bits (desbordament).
Nota - Com que aquest càlcul pot produir nombres de coma flotant, es recomana establir el "Tipus d'informació" a Numèric (flotant), fins i tot si els valors en brut entrants són nombres enters. Això és especialment rellevant per a nombres petits on la part decimal compta. Si els valors de coma flotant són grans i poden superar la longitud del camp "float", en aquest cas es pot perdre el valor sencer, en realitat es recomana emprar Numèric (sense signe) i, per tant, esborrar només la part decimal .
Només es permet una operació d'edició per element.
Si marqueu la casella de selecció Personalitzat en cas d'error, l'element no serà compatible si la passa de preprocessament i és possible especificar opcions de gestió d'errors personalitzades: ignora el valor, estableix un valor especificat o estableix un missatge d'error especificat.| |Sistemes digitals|<|<| | |Booleà a decimal|Converteix el valor del format booleà a decimal. La representació textual és traduïda com a 0 o 1. Per tant, "TRUE" s'emmagatzema com a 1 i "FALSE" s'emmagatzema com a 0. Tots els valors coincideixen si no distingeixen entre majúscules i minúscules. Els valors reconeguts actualment són, per a:
TRUE - true, t, yes, y, on, up, running, enabled, available, ok, master
FALSE - false, f, no, n , off, down, unused, disabled, unavailable, err, slave
A més, qualsevol valor numèric diferent de zero es considera TRUE i zero es considera FALSE. L'element no serà compatible si la passa de preprocessament falla, i és possible especificar opcions de gestió d'errors personalitzades: per ignorar el valor o per establir un valor especificat, o per establir un missatge d'error especificat.| |^|Octal a Decimal|Converteix el valor del format octal a decimal.
Si marqueu la casella Personalitzat en cas d'error, l'element no quedarà incompatible si la passa de preprocessament fallés i és possible especificar-lo. Opcions de gestió d'errors personalitzades: per ignorar el valor, establir un valor especificat o establir un missatge d'error especificat.| |^|Hexadecimal a Decimal|Converteix el valor del format hexadecimal a decimal.
Si marqueu la casella Personalitzat en cas d'error, l'element no serà compatible si falla la passa de preprocessament i és possible especificar-lo. Opcions de gestió d'errors personalitzades: per ignorar el valor, establir un valor especificat o establir un missatge d'error especificat.| |Scripts personalitzats|<|<| | |JavaScript|Introduïu el codi JavaScript al bloc que apareix quan feu clic al camp de paràmetres o a una icona de llapis.
Tingueu en compte que la longitud de JavaScript disponible depèn de la base de dades emprada.
Per obtindre més informació, veieu: Preprocessament de Javascript.| |Validació|<|<| | |A l'interval|Definiu un interval dins del qual un valor ha de caure especificant valors mínims/màxims (inclosos).
S'accepten valors numèrics (incloent qualsevol nombre de dígits, part decimal opcional i part exponencial opcional, valors negatius). Es poden emprar macros d'usuari i macros de descoberta de baix nivell. El valor mínim ha d'ésser inferior al valor màxim.
Ha d'existir com a mínim un valor.
Si marqueu la casella de selecció Personalitzat en cas d'error, l'element no quedarà incompatible en cas d'error de la passa de preprocessament i és possible especificar opcions personalitzades de gestió d'errors: per ignorar el valor, o per establir un valor especificat, o per establir un missatge d'error especificat.| |^|Coincideix amb l'expressió regular|Especifiqueu una expressió regular amb la qual ha de coincidir un valor.
Si marqueu la casella de selecció Personalitzat en cas d'error, l'element no serà compatible si la passa de preprocessament falla i és possible especificar-lo. Opcions de gestió d'errors personalitzades: per ignorar el valor, establir un valor especificat o establir un missatge d'error especificat.| |^|No coincideix amb l'expressió regular|Especifiqueu una expressió regular amb la qual un valor no ha de coincidir.
Si marqueu la casella Personalitzat en cas d'error, l'element no serà compatible si la passa de preprocessament falla i és possible especificar opcions de gestió d'errors personalitzades: per ignorar el valor, establir un valor especificat o establir un missatge d'error especificat.| |^|Cerqueu un error al JSON|Cerqueu un missatge d'error a nivell d'aplicació situat al JSONpath. Atura el processament si té èxit i si el missatge no és buit; en cas contrari, continueu el processament amb el valor que hi havia abans d'aquesta passa de preprocessament. Tingueu en compte que aquests errors de servei extern s'informaran a l'usuari tal qual, sense afegir informació sobre la passa de preprocessament.
No s'informarà d'errors si l'anàlisi de JSON no vàlid falla.< br>Si marqueu la casella Personalitzat en cas d'error, l'element no serà compatible si la passa de preprocessament falla i és possible especificar opcions de gestió d'errors personalitzades: per ignorar el valor, per establir un valor especificat o per establir un missatge d'error especificat.| |^|Cerca un error a l'XML|Cerca un missatge d'error a nivell d'aplicació situat a XPath. Atura el processament si té èxit i si el missatge no és buit; en cas contrari, continueu el processament amb el valor que hi havia abans d'aquesta passa de pretractament. Tingueu en compte que aquests errors de servei extern s'informen a l'usuari tal qual, sense afegir informació sobre la passa de preprocessament.
No s'informarà d'error si l'anàlisi d'un XML no vàlid falla.
Si marqueu la casella de selecció Personalitzat en cas d'error, l'element no quedarà incompatible si la passa de preprocessament falla i és possible especificar opcions personalitzades per a la gestió d'errors: per ignorar el valor, per establir un valor especificat o per establir un missatge d'error especificat.| |^|Cerca un error mitjançant una expressió regular|Cerca un missatge d'error a nivell d'aplicació mitjançant una expressió regular. Atura el processament si té èxit i si el missatge no és buit; en cas contrari, continueu el processament amb el valor que hi havia abans d'aquest pas de preprocessament. Tingueu en compte que aquests errors de servei extern s'informen a l'usuari tal qual, sense afegir informació sobre la passa de preprocessament.
Paràmetres:
patró - expressió regular
sortida - patró de format de sortida. Una seqüència d'escapada \N (on N=1...9) es substitueix pel grup enèssim corresponent. Es substitueix una seqüència d'escapada \0 pel text corresponent.
Si marqueu la casella Personalitzat en cas d'error, l'element no quedarà incompatible en cas d'error de la passa de preprocessament i és possible especificar opcions de gestió d'errors personalitzades: per ignorar el valor, establir un valor especificat o establir un missatge d'error especificat.| |^|Comprova si un valor no és compatible|Comprova si hi ha hagut un error en recuperar el valor de l'element. Normalment això comportaria que l'element no s'admetés, però podeu canviar aquest comportament especificant les opcions de gestió d'errors Personalitzat en cas d'error: ignorar el valor, establir un valor especificat (en aquest cas, l'element es mantindrà compatible i el valor es pot emprar en triggers) o establir un missatge d'error especificat. Tingueu en compte que per a aquesta passa de preprocessament, la casella de selecció Personalitza en cas d'error és en gris i sempre marcada.
Aquesta passa sempre s'executa com a primera passa de preprocessament i es posa per sobre de tots els altres després de desar els canvis a l'element. Només es pot emprar una vegada.
Admès des de la versió 5.2.0.| |Escanyament|<|<| | |Descartar sense canvis|Ignorar un valor si no ha canviat.
Si s'ignora un valor, no es desa a la base de dades i el servidor Zabbix no sap que aquest valor s'ha canviat. No s'avaluarà cap trigger i, per tant, no es crearan ni resoldran problemes relacionats amb els triggers. Les funcions només funcionaran en funció de les dades realment desades a la base de dades. Com que les tendències es creen a partir de les dades de la base de dades, si no hi ha cap valor registrat durant una hora, tampoc no hi haurà dades de tendències per a aquesta hora.
Només es pot especificar una opció d'acceleració per a un element.
Tingueu en compte que és possible per als elements monitorats pel proxy Zabbix que les diferències de valor molt petites (menys de 0,000001) no s'esborrin correctament pel proxy, però s'emmagatzemen a l'historial amb el mateix valor excepte si la base de dades de Zabbix s'ha [actualitzat] (https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500#enabling_extended_range_of_numeric_float_values).| |^|Descartar sense canvis amb el bit de vida|Ignoreu un valor si no ha canviat en el període de temps especificat (en segons).
S'admeten valors enters positius per especificar segons (mínim - 1 segon). Els sufixos de temps es poden emprar en aquest camp (per exemple, 30 s, 1 m, 2 h, 1 d). En aquest camp es poden emprar macros d'usuari i macros de descoberta de baix nivell.
Si s'ignora un valor, no es desa a la base de dades i el servidor Zabbix no sap que s'ha rebut aquest valor. No s'avaluarà cap trigger i, per tant, no es crearan ni resoldran problemes relacionats amb els triggers. Les funcions només funcionaran en funció de les dades realment desades a la base de dades. Com que les tendències es creen a partir de les dades de la base de dades, si no hi ha cap valor registrat durant una hora, tampoc no hi haurà dades de tendències per a aquesta hora.
Només es pot especificar una opció d'acceleració per a un element.
Tingueu en compte que només és possible per als elements monitorats pel proxy Zabbix les diferències de valors petites (menys de 0,000001) no s'esborren correctament pel proxy, però s'emmagatzemen a l'historial amb el mateix valor excepte si la base de dades de Zabbix s'ha [actualitzat] (https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500#enabling_extended_range_of_numeric_float_values).| |Prometheus|<|<| | |Patró de Prometheus|Empreu la consulta següent per extreure les dades necessàries de les mètriques de Prometheus.
Consulteu les comprovacions de Prometheus per obtindre més informació.| |^|Prometheus a JSON|Convertiu les mètriques de Prometheus requerides a JSON.
Consulteu les comprovacions de Prometheus per obtindre més informació.|
Per modificar i limitar les passes de preprocessament, Zabbix ha de recordar el darrer valor per calcular/comparar el nou valor segons sigui necessari. Aquests valors anteriors els gestiona el gestor de preprocessament. Si es reinicia el servidor o el proxy Zabbix o es fan canvis a les passes de preprocessament, es restableix el darrer valor de l'element corresponent, donant lloc a:
El paràmetre Tipus d'informació de l'element es mostra a la part inferior de la pestanya quan es defineix almenys una passa de preprocessament. Si cal, és possible modificar el tipus d'informació sense sortir de la pestanya Preprocessament. Veieu la creació d'un element per a la descripció detallada dels paràmetres.
Si empreu un multiplicador personalitzat o un valor d'emmagatzematge com ara Canvis per segon per als elements amb el tipus d'informació establert a Numèric (sense signe) i el valor calculat resultant és en realitat un nombre flotant, el valor calculat encara s'admet com el valor correcten esborrant la part decimal i emmagatzemant el valor com a nombre enter.
All supported transformations are listed below. Click on the transformation name to see full details about it.
Name | Description | Type |
---|---|---|
Regular expression | Match the value to the regular expression and replace with the required output. | Text |
Replace | Find the search string and replace it with another (or nothing). | |
Trim | Remove specified characters from the beginning and end of the value. | |
Right trim | Remove specified characters from the end of the value. | |
Left trim | Remove specified characters from the beginning of the value. | |
XML XPath | Extract value or fragment from XML data using XPath functionality. | Structured data |
JSON Path | Extract value or fragment from JSON data using JSONPath functionality. | |
CSV to JSON | Convert CSV file data into JSON format. | |
XML to JSON | Convert data in XML format to JSON. | |
SNMP walk value | Extract value by the specified OID/MIB name and apply formatting options. | SNMP |
SNMP walk to JSON | Convert SNMP values to JSON. | |
SNMP get value | Apply formatting options to the SNMP get value. | |
Custom multiplier | Multiply the value by the specified integer or floating-point value. | Arithmetic |
Simple change | Calculate the difference between the current and previous value. | Change |
Change per second | Calculate the value change (difference between the current and previous value) speed per second. | |
Boolean to decimal | Convert the value from boolean format to decimal. | Numeral systems |
Octal to decimal | Convert the value from octal format to decimal. | |
Hexadecimal to decimal | Convert the value from hexadecimal format to decimal. | |
JavaScript | Enter JavaScript code. | Custom scripts |
In range | Define a range that a value should be in. | Validation |
Matches regular expression | Specify a regular expression that a value must match. | |
Does not match regular expression | Specify a regular expression that a value must not match. | |
Check for error in JSON | Check for an application-level error message located at JSONPath. | |
Check for error in XML | Check for an application-level error message located at XPath. | |
Check for error using a regular expression | Check for an application-level error message using a regular expression. | |
Check for not supported value | Check if there was an error in retrieving item value. | |
Discard unchanged | Discard a value if it has not changed. | Throttling |
Discard unchanged with heartbeat | Discard a value if it has not changed within the defined time period. | |
Prometheus pattern | Use the following query to extract the required data from Prometheus metrics. | Prometheus |
Prometheus to JSON | Convert the required Prometheus metrics to JSON. |
Note that for Change and Throttling preprocessing steps, Zabbix has to remember the last value to calculate/compare the new value as required. These previous values are handled by the preprocessing manager. If Zabbix server or proxy is restarted or there is any change made to preprocessing steps, the last value of the corresponding item is reset, resulting in:
Match the value to the regular expression and replace with the required output.
Parameters:
Comments:
Find the search string and replace it with another (or nothing).
Parameters:
Comments:
Remove specified characters from the beginning and end of the value.
Remove specified characters from the end of the value.
Remove specified characters from the beginning of the value.
Extract value or fragment from XML data using XPath functionality.
Comments:
Examples:
number(/document/item/value) #will extract '10' from <document><item><value>10</value></item></document>
number(/document/item/@attribute) #will extract '10' from <document><item attribute="10"></item></document>
/document/item #will extract '<item><value>10</value></item>' from <document><item><value>10</value></item></document>
Extract value or fragment from JSON data using JSONPath functionality.
If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
Convert CSV file data into JSON format.
For more information, see: CSV to JSON preprocessing.
Convert data in XML format to JSON.
For more information, see: Serialization rules.
If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
Extract value by the specified OID/MIB name and apply formatting options:
' '
are replaced by ':'
);If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
Convert SNMP values to JSON.
Specify a field name in the JSON and the corresponding SNMP OID path. Field values will be populated by values in the specified SNMP OID path.
Comments:
Apply formatting options to the SNMP get value:
' '
are replaced by ':'
);If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
Multiply the value by the specified integer or floating-point value.
Comments:
1e+70
; user macros and LLD macros; strings that include macros, for example, {#MACRO}e+10
, {$MACRO1}e+{$MACRO2}
. The macros must resolve to an integer or a floating-point number.Calculate the difference between the current and previous value.
Comments:
Calculate the value change (difference between the current and previous value) speed per second.
Comments:
Convert the value from boolean format to decimal.
Comments:
Convert the value from octal format to decimal.
If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
Convert the value from hexadecimal format to decimal.
If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
Enter JavaScript code in the block that appears when clicking in the parameter field or on the pencil icon.
Comments:
Define a range that a value should be in by specifying minimum/maximum values (inclusive).
Comments:
Specify a regular expression that a value must match.
If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
Specify a regular expression that a value must not match.
If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
Check for an application-level error message located at JSONPath. Stop processing if succeeded and the message is not empty; otherwise, continue processing with the value that was before this preprocessing step.
Comments:
Check for an application-level error message located at XPath. Stop processing if succeeded and the message is not empty; otherwise, continue processing with the value that was before this preprocessing step.
Comments:
Check for an application-level error message using a regular expression. Stop processing if succeeded and the message is not empty; otherwise, continue processing with the value that was before this preprocessing step.
Parameters:
Comments:
Check if no item value could be retrieved. Specify how the failure should be processed, based on inspecting the returned error message.
Parameters:
Comments:
Discard a value if it has not changed.
Comments:
Discard a value if it has not changed within the defined time period (in seconds).
Comments:
Use the following query to extract the required data from Prometheus metrics.
See Prometheus checks for more details.
Convert the required Prometheus metrics to JSON.
See Prometheus checks for more details.
User macros and user macros with context are supported in:
The macro context is ignored when a macro is replaced with its value. The macro value is inserted in the code as is, it is not possible to add additional escaping before placing the value in the JavaScript code. Please be advised that this can cause JavaScript errors in some cases.