[comment]: # (tags: preprocessing )

[comment]: # ({cd1d3c06-cd1d3c06})
# 2 Vienuma vērtības priekšapstrāde

[comment]: # ({/cd1d3c06-cd1d3c06})

[comment]: # ({cfb7d2d9-cb2c0d06})
#### Pārskats

Priekšapstrāde ļauj piemērot transformācijas saņemtajām vienuma vērtībām pirms to saglabāšanas datubāzē.
Šīs transformācijas/priekšapstrādes darbības veic Zabbix serveris vai starpniekserveris (ja vienumus uzrauga starpniekserveris).

Šī funkcija atbalsta dažādus lietošanas scenārijus, piemēram:

-   baitu pārveidošanu bitos (piemēram, reizinot tīkla datplūsmas vērtības ar "8");
-   sekundes statistikas aprēķināšanu pakāpeniski pieaugošām vērtībām;
-   regulāro izteiksmju piemērošanu, lai izgūtu vai modificētu vērtības;
-   pielāgotu skriptu izpildi vērtībām;
-   nemainīgu vērtību atmešanu, lai optimizētu datubāzes glabātuves izmantošanu.

Vienumam var konfigurēt vienu vai vairākas priekšapstrādes darbības.
Šīs darbības tiek izpildītas to konfigurēšanas secībā.

::: noteimportant
Ja priekšapstrādes darbība neizdodas, vienums kļūst [neatbalstīts](/manual/config/items/item#unsupported-items).
No tā var izvairīties, izmantojot kļūdu apstrādi *Custom on fail* (pieejama lielākajai daļai transformāciju), kas ļauj atmest vērtības vai iestatīt pielāgotas vērtības.
<br><br>
Žurnāla vienumiem žurnāla metadati (bez vērtības) vienmēr atiestatīs vienuma neatbalstīto stāvokli, padarot to atkal atbalstītu.
Tas notiek pat tad, ja sākotnējā kļūda radās pēc žurnāla vērtības saņemšanas no aģenta.
:::

Visas vērtības, kas tiek nodotas priekšapstrādei, sākotnēji tiek apstrādātas kā virknes.
Pārveidošana uz vēlamo vērtības tipu (kā definēts vienuma konfigurācijā) tiek veikta priekšapstrādes procesa beigās.
Tomēr noteiktas priekšapstrādes darbības vajadzības gadījumā var izraisīt agrāku pārveidošanu.
Detalizētai tehniskajai informācijai skatiet [Priekšapstrādes detalizēta informācija](/manual/config/items/preprocessing/preprocessing_details).

Lai pārliecinātos, ka jūsu priekšapstrādes konfigurācija darbojas, kā paredzēts, varat to [pārbaudīt](/manual/config/items/preprocessing/testing).

Skatiet arī: [Priekšapstrādes piemēri](/manual/config/items/preprocessing/examples)

[comment]: # ({/cfb7d2d9-cb2c0d06})

[comment]: # ({a7d4a45d-033c164f})
#### Konfigurācija

Priekšapstrādes soļi ir definēti vienuma
[konfigurācijas](/manual/config/items/item#configuration) formas cilnē **Priekšapstrāde**.

![](../../../../assets/en/manual/config/items/item_c.png){width="500"}

Noklikšķiniet uz *Pievienot*, lai atlasītu atbalstītu transformāciju.

Lauks *Informācijas tips* tiek parādīts cilnes apakšdaļā, kad ir definēts vismaz viens priekšapstrādes solis.
Ja nepieciešams, informācijas tipu var mainīt, neatstājot cilni *Priekšapstrāde*.
Detalizētu parametru aprakstu skatiet sadaļā [Vienuma izveide](/manual/config/items/item).

[comment]: # ({/a7d4a45d-033c164f})

[comment]: # ({1848db64-ba0e1f76})
#### Atbalstītās transformācijas

Visas atbalstītās transformācijas ir uzskaitītas zemāk.
Noklikšķiniet uz transformācijas nosaukuma, lai skatītu tās pilnīgu informāciju.

|Name|Description|Type|
|--|-------|-|
|[Regular expression](#regexp)|Saskaņo vērtību ar regulāro izteiksmi un aizstāj to ar nepieciešamo izvadi.|Text|
|[Replace](#replace)|Atrod meklēšanas virkni un aizstāj to ar citu (vai neko).|^|
|[Trim](#trim)|Noņem norādītos simbolus no vērtības sākuma un beigām.|^|
|[Right trim](#rtrim)|Noņem norādītos simbolus no vērtības beigām.|^|
|[Left trim](#ltrim)|Noņem norādītos simbolus no vērtības sākuma.|^|
|[XML XPath](#xpath)|Izvelk vērtību vai fragmentu no XML datiem, izmantojot XPath funkcionalitāti.|Structured data|
|[JSON Path](#jsonpath)|Izvelk vērtību vai fragmentu no JSON datiem, izmantojot [JSONPath funkcionalitāti](/manual/config/items/preprocessing/jsonpath_functionality).|^|
|[CSV to JSON](#csvtojson)|Pārvērš CSV faila datus JSON formātā.|^|
|[XML to JSON](#xmltojson)|Pārvērš XML formāta datus JSON.|^|
|[SNMP walk value](#snmpwalk)|Izvelk vērtību pēc norādītā OID/MIB nosaukuma un piemēro formatēšanas opcijas.|SNMP|
|[SNMP walk to JSON](#snmptojson)|Pārvērš SNMP vērtības JSON.|^|
|[SNMP get value](#snmpget)|Piemēro formatēšanas opcijas SNMP get vērtībai.|^|
|[Custom multiplier](#multiplier)|Reizina vērtību ar norādīto veselo skaitli vai peldošā komata vērtību.|Arithmetic|
|[Simple change](#simplechange)|Aprēķina starpību starp pašreizējo un iepriekšējo vērtību.|Change|
|[Change per second](#changepersec)|Aprēķina vērtības izmaiņu (starpību starp pašreizējo un iepriekšējo vērtību) ātrumu sekundē.|^|
|[Boolean to decimal](#boolean)|Pārvērš vērtību no Būla formāta decimālajā formātā.|Numeral systems|
|[Octal to decimal](#octal)|Pārvērš vērtību no oktālā formāta decimālajā formātā.|^|
|[Hexadecimal to decimal](#hexadecimal)|Pārvērš vērtību no heksadecimālā formāta decimālajā formātā.|^|
|[JavaScript](#javascript)|Ievadiet JavaScript kodu.|Custom scripts|
|[In range](#inrange)|Definē diapazonu, kurā vērtībai jāatrodas.|Validation|
|[Matches regular expression](#matchesregexp)|Norāda regulāro izteiksmi, kurai vērtībai jāsakrīt.|^|
|[Does not match regular expression](#doesnotmatchregexp)|Norāda regulāro izteiksmi, kurai vērtībai nedrīkst sakrist.|^|
|[Check for error in JSON](#errorinjson)|Pārbauda lietojumprogrammas līmeņa kļūdas ziņojumu, kas atrodas JSONPath.|^|
|[Check for error in XML](#errorinxml)|Pārbauda lietojumprogrammas līmeņa kļūdas ziņojumu, kas atrodas XPath.|^|
|[Check for error using a regular expression](#errorbyregexp)|Pārbauda lietojumprogrammas līmeņa kļūdas ziņojumu, izmantojot regulāro izteiksmi.|^|
|[Check for not supported value](#checkunsupported)|Pārbauda, vai nav izdevies izgūt nevienu vienums vērtību.|^|
|[Discard unchanged](#discardunchanged)|Noraida vērtību, ja tā nav mainījusies.|Throttling|
|[Discard unchanged with heartbeat](#discardwithheartbeat)|Noraida vērtību, ja tā nav mainījusies noteiktajā laika periodā.|^|
|[Prometheus pattern](#prometheus)|Izmanto šādu vaicājumu, lai no Prometheus metrikām izvilktu nepieciešamos datus.|Prometheus|
|[Prometheus to JSON](#promtojson)|Pārvērš nepieciešamās Prometheus metrikas JSON.|^|

Ņemiet vērā, ka *Change* un *Throttling* priekšapstrādes soļiem Zabbix ir jāatceras pēdējā vērtība, lai aprēķinātu/salīdzinātu jauno vērtību, kā nepieciešams.
Šīs iepriekšējās vērtības apstrādā priekšapstrādes pārvaldnieks.
Ja Zabbix serveris vai starpniekserveris tiek restartēts vai tiek veiktas jebkādas izmaiņas priekšapstrādes soļos, attiecīgā vienums pēdējā vērtība tiek atiestatīta, kā rezultātā:

-   *Simple change*, *Change per second* soļiem - nākamā vērtība tiks ignorēta, jo nav iepriekšējās vērtības, no kuras aprēķināt izmaiņas;
-   *Discard unchanged*, *Discard unchanged with heartbeat* soļiem - nākamā vērtība nekad netiks noraidīta, pat ja tā būtu bijusi jānoraida saskaņā ar noraidīšanas noteikumiem.

[comment]: # ({/1848db64-ba0e1f76})

[comment]: # ({619c0f9b-78f38a0c})
##### Regulārā izteiksme {#regexp}

Salīdziniet vērtību ar regulāro izteiksmi un aizstājiet to ar nepieciešamo izvadi.

Parametri:

-   **pattern** - regulārā izteiksme;<br>
-   **output** - izvades formatēšanas veidne.
Atkāpju secība \\N (kur N=1…9) tiek aizstāta ar N-to atrasto grupu.
Atkāpju secība \\0 tiek aizstāta ar atrasto tekstu.

Komentāri:

-   Ja ievades vērtība neatbilst, vienums kļūs neatbalstīts;<br>
-   Regulārā izteiksme atbalsta ne vairāk kā 10 uztvertu grupu izvilkšanu ar \\N secību;<br>
-   Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.<br>
-   Lūdzu, skatiet sadaļu [regulārās izteiksmes](/manual/regular_expressions#example), kur pieejami daži esoši piemēri.

[comment]: # ({/619c0f9b-78f38a0c})

[comment]: # ({a6afae23-c741e38c})
##### Aizstāt {#replace}

Atrodiet meklējamo virkni un aizstājiet to ar citu virkni (vai neko).

Parametri:

-   **meklējamā virkne** - virkne, ko atrast un aizstāt, reģistrjutīga (obligāti);<br>
-   **aizstāšana** - virkne, ar ko aizstāt meklējamo virkni.
Aizstāšanas virkne var būt arī tukša, tādējādi ļaujot dzēst meklējamo virkni, kad tā tiek atrasta.

Komentāri:

-   Tiks aizstātas visas meklējamās virknes sakritības;
-   Ir iespējams izmantot atsoļa secības, lai meklētu vai aizstātu rindas pārtraukumus, rindas atgriezi, tabulācijas un atstarpes "\\n \\r \\t \\s"; atpakaļvērsto slīpsvītru var atsoļot kā "\\\\" un atsoļa secības var atsoļot kā "\\\\n";
-   Rindas pārtraukumu, rindas atgriezes un tabulāciju atsoļošana tiek veikta automātiski zema līmeņa atklāšanas laikā.

[comment]: # ({/a6afae23-c741e38c})

[comment]: # ({7245fbd9-6808176e})
##### Apgriezt {#trim}

Noņemt norādītās rakstzīmes no vērtības sākuma un beigām.

[comment]: # ({/7245fbd9-6808176e})

[comment]: # ({412a1239-0e07eeb3})
##### Labā apgriešana {#rtrim}

Noņemt norādītās rakstzīmes no vērtības beigām.

[comment]: # ({/412a1239-0e07eeb3})

[comment]: # ({44aeff62-94619b15})
##### Kreisā apgriešana {#ltrim}

Noņem norādītās rakstzīmes no vērtības sākuma.

[comment]: # ({/44aeff62-94619b15})

[comment]: # ({4e480f13-245a3642})
##### XML XPath {#xpath}

Izgūt vērtību vai fragmentu no XML datiem, izmantojot XPath funkcionalitāti.

Komentāri:

-   Lai šī opcija darbotos, Zabbix serverim (vai Zabbix starpniekserverim) jābūt kompilētam ar libxml atbalstu;<br>
-   Vārdtelpas netiek atbalstītas;<br>
-   Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādīto vērtību vai iestatīt norādīto kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs par neatbalstītu, ja ir atlasīta opcija atmest vērtību vai iestatīt norādīto vērtību.

Piemēri:

```default
number(/document/item/value) #izgūs '10' no <document><item><value>10</value></item></document>
number(/document/item/@attribute) #izgūs '10' no <document><item attribute="10"></item></document>
/document/item #izgūs '<item><value>10</value></item>' no <document><item><value>10</value></item></document>
```

[comment]: # ({/4e480f13-245a3642})

[comment]: # ({98d88188-449125f6})
##### JSON Path {#jsonpath}

Izgūstiet vērtību vai fragmentu no JSON datiem, izmantojot [JSONPath funkcionalitāti](/manual/config/items/preprocessing/jsonpath_functionality).

Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs par neatbalstītu, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/98d88188-449125f6})

[comment]: # ({b77375b1-a02e724a})
##### CSV uz JSON {#csvtojson}

Pārveidojiet CSV faila datus JSON formātā.

Papildinformāciju skatiet: [CSV uz JSON priekšapstrāde](/manual/config/items/preprocessing/csv_to_json#csv-header-processing).

[comment]: # ({/b77375b1-a02e724a})

[comment]: # ({17aa6475-4ef90b58})
##### XML uz JSON {#xmltojson}

Pārveidojiet datus XML formātā uz JSON.

Papildinformāciju skatiet: [Serializācijas noteikumi](/manual/config/items/preprocessing/javascript/javascript_objects#serialization-rules).

Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/17aa6475-4ef90b58})

[comment]: # ({d17ad5a8-33a9e7d3})
##### SNMP walk vērtība {#snmpwalk}

Izgūt vērtību pēc norādītā OID/MIB nosaukuma un piemērot formatēšanas opcijas:<br>

-   **Bez izmaiņām** - atgriezt heksadecimālo virkni kā neekranētu heksadecimālo virkni (*ņemiet vērā*, ka attēlošanas norādes joprojām tiek piemērotas);<br>
-   **UTF-8 no hex-STRING** - pārveidot heksadecimālo virkni par UTF-8 virkni;<br>
-   **MAC no hex-STRING** - validēt heksadecimālo virkni kā MAC adresi un atgriezt korektu MAC adreses virkni (kur `' '` tiek aizstātas ar `':'`);<br>
-   **Vesels skaitlis no BITS** - pārveidot pirmos 8 baitus bitu virknei, kas izteikta kā heksadecimālo rakstzīmju secība (piemēram, "1A 2B 3C 4D"), par 64 bitu bezparaksta veselu skaitli.
Bitu virknēs, kas ir garākas par 8 baitiem, nākamie baiti tiks ignorēti.

Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādīto vērtību vai iestatīt norādīto kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs par neatbalstītu, ja ir atlasīta opcija atmest vērtību vai iestatīt norādīto vērtību.

[comment]: # ({/d17ad5a8-33a9e7d3})

[comment]: # ({84d4ee4a-7abd39a8})
##### SNMP walk uz JSON {#snmptojson}

Pārveido SNMP vērtības uz JSON.

Norādiet lauka nosaukumu JSON formātā un atbilstošo SNMP OID ceļu.
Lauku vērtības tiks aizpildītas ar vērtībām no norādītā SNMP OID ceļa.

Komentāri:

-   Ir pieejamas līdzīgas vērtību formatēšanas opcijas kā solī *SNMP walk value*;<br>
-   Jūs varat izmantot šo priekšapstrādes soli [SNMP OID atklāšanai](/manual/discovery/low_level_discovery/examples/snmp_oids_walk);<br>
-   Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādīto vērtību vai iestatīt norādīto kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs par neatbalstītu, ja ir atlasīta opcija atmest vērtību vai iestatīt norādīto vērtību.

[comment]: # ({/84d4ee4a-7abd39a8})

[comment]: # ({e7b0039f-27c4c678})
##### SNMP iegūtā vērtība {#snmpget}

Pielietojiet formatēšanas opcijas SNMP iegūtajai vērtībai:<br>

-   **UTF-8 no Hex-STRING** - pārveidot hex-virkni par UTF-8 virkni;<br>
-   **MAC no Hex-STRING** - validēt hex-virkni kā MAC adresi un atgriezt korektu MAC adreses virkni (kur `' '` tiek aizstātas ar `':'`);<br>
-   **Vesels skaitlis no BITS** - pārveidot pirmos 8 baitus bitu virknei, kas izteikta kā heksadecimālu rakstzīmju secība (piemēram, "1A 2B 3C 4D"), par 64 bitu bezparaksta veselu skaitli.
Bitu virknēs, kas ir garākas par 8 baitiem, turpmākie baiti tiks ignorēti.

Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādīto vērtību vai iestatīt norādīto kļūdas ziņojumu.
Neveiksmīga priekšapstrādes soļa gadījumā vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādīto vērtību.

[comment]: # ({/e7b0039f-27c4c678})

[comment]: # ({c7849362-6b373886})
##### Pielāgots reizinātājs {#multiplier}

Reiziniet vērtību ar norādīto veselo skaitli vai peldošā komata skaitli.

Komentāri:

-   Izmantojiet šo opciju, lai pārvērstu saņemtās vērtības KB, MBps u.c. vienībās uz B, Bps.
Pretējā gadījumā Zabbix nevarēs pareizi iestatīt [prefiksus](/manual/appendix/suffixes) (K, M, G u.c.).<br>
-   Ņemiet vērā, ka, ja vienuma informācijas tips ir *Numeric (unsigned)*, ienākošajām vērtībām ar daļskaitļa daļu tā tiks noņemta (t.i., '0.9' kļūs par '0') pirms pielāgotā reizinātāja piemērošanas;<br>
-   Ja izmantojat pielāgotu reizinātāju vai saglabājat vērtību kā *Change per second* vienumiem, kuriem informācijas tips ir iestatīts uz *Numeric (unsigned)*, un iegūtā aprēķinātā vērtība faktiski ir peldošā komata skaitlis, aprēķinātā vērtība joprojām tiek pieņemta kā korekta, noņemot decimāldaļu un saglabājot vērtību kā veselu skaitli;<br>
-   Tiek atbalstīts: zinātniskais pieraksts, piemēram, `1e+70`; lietotāja makrosi un LLD makrosi; virknes, kas ietver makrosus, piemēram, `{#MACRO}e+10`, `{$MACRO1}e+{$MACRO2}`.
Makrosiem ir jāatrisinās par veselu skaitli vai peldošā komata skaitli.
-   Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Neveiksmīga priekšapstrādes soļa gadījumā vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/c7849362-6b373886})

[comment]: # ({a862f0f1-2ccfaffa})
##### Vienkārša izmaiņa {#simplechange}

Aprēķina starpību starp pašreizējo un iepriekšējo vērtību.

Komentāri:

-   Šis solis var būt noderīgs, lai mērītu pastāvīgi augošu vērtību;<br>
-   Tiek aprēķināts kā **value**-**prev\_value**, kur *value* — pašreizējā vērtība; *prev\_value* — iepriekš saņemtā vērtība;<br>
-   Katram vienumam ir atļauta tikai viena izmaiņas operācija ("Vienkārša izmaiņa" vai "Izmaiņa sekundē");
-   Ja pašreizējā vērtība ir mazāka par iepriekšējo vērtību, Zabbix šo starpību atmet (neko nesaglabā) un gaida citu vērtību;<br>
-   Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Neveiksmīga priekšapstrādes soļa gadījumā vienums nekļūs par neatbalstītu, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/a862f0f1-2ccfaffa})

[comment]: # ({68953a56-5c01053e})
##### Izmaiņa sekundē {#changepersec}

Aprēķina vērtības izmaiņas ātrumu sekundē (starpību starp pašreizējo un iepriekšējo vērtību).

Komentāri:

-   Šis solis ir noderīgs, lai aprēķinātu nepārtraukti augošas vērtības pieauguma ātrumu sekundē;<br>
-   Tā kā šis aprēķins var radīt peldošā komata skaitļus, ieteicams iestatīt *Informācijas tipu* uz *Skaitlis (peldošais komats)*, pat ja ienākošās neapstrādātās vērtības ir veseli skaitļi.
Tas ir īpaši svarīgi maziem skaitļiem, kur nozīme ir decimālajai daļai.
Ja peldošā komata vērtības ir lielas un var pārsniegt lauka *float* garumu, kā rezultātā var tikt zaudēta visa vērtība, patiesībā ieteicams izmantot *Skaitlis (bez zīmes)* un tādējādi nogriezt tikai decimālo daļu.<br>
-   Tiek aprēķināts kā (**value**-**prev\_value**)/(**time**-**prev\_time**), kur *value* - pašreizējā vērtība; *prev\_value* - iepriekš saņemtā vērtība; *time* - pašreizējais laikspiedols; *prev\_time* - iepriekšējās vērtības laikspiedols;<br>
-   Vienam vienumam ir atļauta tikai viena izmaiņu operācija ("Vienkārša izmaiņa" vai "Izmaiņa sekundē");
-   Ja pašreizējā vērtība ir mazāka par iepriekšējo vērtību, Zabbix šo starpību ignorē (neuzglabā neko) un gaida nākamo vērtību.
Tas palīdz pareizi strādāt, piemēram, ar 32 bitu SNMP skaitītāju apvēršanos (overflow).<br>
-   Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu ignorēt vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Neizdevušās priekšapstrādes darbības gadījumā vienums netiks atzīts par neatbalstītu, ja ir izvēlēta opcija ignorēt vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/68953a56-5c01053e})

[comment]: # ({dde45666-e6ba88b1})
##### Būla vērtības pārveidošana decimālskaitlī {#boolean}

Pārveido vērtību no būla formāta uz decimālskaitli.

Komentāri:

-   Tekstuālais attēlojums tiek pārveidots par 0 vai 1.
Tādējādi 'TRUE' tiek saglabāts kā 1 un 'FALSE' tiek saglabāts kā 0.
Visas vērtības tiek salīdzinātas, neņemot vērā burtu reģistru.
Pašlaik atpazītās vērtības ir šādas: *TRUE* — true, t, yes, y, on, up, running, enabled, available, ok, master; *FALSE* — false, f, no, n, off, down, unused, disabled, unavailable, err, slave.
Papildus tam jebkura skaitliska vērtība, kas nav nulle, tiek uzskatīta par TRUE, bet nulle tiek uzskatīta par FALSE.<br>
-   Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/dde45666-e6ba88b1})

[comment]: # ({37db8f76-0bc2b9d3})
##### Oktālais uz decimālo {#octal}

Pārveido vērtību no oktālā formāta uz decimālo.

Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/37db8f76-0bc2b9d3})

[comment]: # ({bee91655-3884a26a})
##### No heksadecimālā uz decimālo {#hexadecimal}

Pārveido vērtību no heksadecimālā formāta uz decimālo.

Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādīto vērtību vai iestatīt norādīto kļūdas ziņojumu.
Ja priekšapstrādes solis neizdodas, vienums nekļūs par neatbalstītu, ja ir atlasīta opcija atmest vērtību vai iestatīt norādīto vērtību.

[comment]: # ({/bee91655-3884a26a})

[comment]: # ({2933bc04-163f38eb})
##### JavaScript {#javascript}

Ievadiet JavaScript kodu modālajā redaktorā, kas tiek atvērts, noklikšķinot parametra laukā vai uz zīmuļa ikonas blakus tam.

:::noteimportant
Neizmantojiet neizsludinātas piešķires priekšapstrādes JavaScript kodā.
Izmantojiet `var`, lai deklarētu lokālos mainīgos.
:::

Komentāri:

-   Pieejamais JavaScript garums ir atkarīgs no [izmantotās datubāzes](/manual/config/items/item#custom-script-limit);<br>
-   Papildinformāciju skatiet: [Javascript priekšapstrāde](/manual/config/items/preprocessing/javascript).

[comment]: # ({/2933bc04-163f38eb})

[comment]: # ({274c1828-217f6ffe})
##### Diapazonā {#inrange}

Definējiet diapazonu, kurā vērtībai jāatrodas, norādot minimālo/maksimālo vērtību (ieskaitot robežvērtības).

Komentāri:

-   Tiek pieņemtas skaitliskas vērtības (ieskaitot jebkādu ciparu skaitu, neobligātu decimāldaļu un neobligātu eksponentdaļu, kā arī negatīvas vērtības);<br>
-   Minimālajai vērtībai jābūt mazākai par maksimālo;<br>
-   Jābūt norādītai vismaz vienai vērtībai;<br>
-   Var izmantot lietotāja makrosus un zema līmeņa atklāšanas makrosus;<br>
-   Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.

Ja priekšapstrādes solis neizdodas, vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/274c1828-217f6ffe})

[comment]: # ({865ed7bd-94b608fd})
##### Atbilst regulārajai izteiksmei {#matchesregexp}

Norādiet regulāro izteiksmi, kurai vērtībai ir jāatbilst.

Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Neveiksmīga priekšapstrādes soļa gadījumā vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/865ed7bd-94b608fd})

[comment]: # ({0d09fb64-0e13b3da})
##### Neatbilst regulārajai izteiksmei {#doesnotmatchregexp}

Norādiet regulāro izteiksmi, kurai vērtība nedrīkst atbilst.

Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādīto vērtību vai iestatīt norādīto kļūdas ziņojumu.
Neveiksmīga priekšapstrādes soļa gadījumā vienums nekļūs par neatbalstītu, ja ir atlasīta opcija atmest vērtību vai iestatīt norādīto vērtību.

[comment]: # ({/0d09fb64-0e13b3da})

[comment]: # ({e8971647-16cc3eb4})
##### Kļūdas pārbaude JSON formātā {#errorinjson}

Pārbauda lietojumprogrammas līmeņa kļūdas ziņojumu, kas atrodas JSONPath.
Pārtrauc apstrādi, ja darbība ir veiksmīga un ziņojums nav tukšs; pretējā gadījumā turpina apstrādi ar vērtību, kāda bija pirms šīs priekšapstrādes darbības.

Komentāri:

-   Šīs ārējo pakalpojumu kļūdas lietotājam tiek parādītas tādas, kādas tās ir, nepievienojot informāciju par priekšapstrādes darbību;<br>
-   Kļūda netiks ziņota, ja neizdosies parsēt nederīgu JSON;<br>
-   Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādīto vērtību vai iestatīt norādīto kļūdas ziņojumu.
Neveiksmīgas priekšapstrādes darbības gadījumā vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādīto vērtību.

[comment]: # ({/e8971647-16cc3eb4})

[comment]: # ({0ea5cd2b-cd62453f})
##### Kļūdas pārbaude XML failā {#errorinxml}

Pārbauda lietojumprogrammas līmeņa kļūdas ziņojumu, kas atrodas XPath.
Pārtrauc apstrādi, ja darbība ir veiksmīga un ziņojums nav tukšs; pretējā gadījumā turpina apstrādi ar vērtību, kāda bija pirms šīs priekšapstrādes darbības.

Komentāri:

-   Šīs ārējo pakalpojumu kļūdas lietotājam tiek parādītas tādas, kādas tās ir, nepievienojot informāciju par priekšapstrādes darbību;<br>
-   Kļūda netiks ziņota, ja neizdosies parsēt nederīgu XML;<br>
-   Ja atzīmējat izvēles rūtiņu *Pielāgots kļūmes gadījumā*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Ja priekšapstrādes darbība neizdodas, vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/0ea5cd2b-cd62453f})

[comment]: # ({6024a92e-db234ea5})
##### Kļūdas pārbaude, izmantojot regulāro izteiksmi {#errorbyregexp}

Pārbaudiet lietojumprogrammas līmeņa kļūdas ziņojumu, izmantojot regulāro izteiksmi.
Pārtrauciet apstrādi, ja pārbaude ir veiksmīga un ziņojums nav tukšs; pretējā gadījumā turpiniet apstrādi ar vērtību, kāda bija pirms šīs priekšapstrādes darbības.

Parametri:

-   **pattern** - regulārā izteiksme;<br>
-   **output** - izvades formatēšanas veidne.
Aizvietošanas secība \\N (kur N=1…9) tiek aizstāta ar N-to atrasto grupu.
Aizvietošanas secība \\0 tiek aizstāta ar atrasto tekstu.

Komentāri:

-   Šīs ārējo pakalpojumu kļūdas lietotājam tiek parādītas tādas, kādas tās ir, nepievienojot informāciju par priekšapstrādes darbību;<br>
-   Ja atzīmējat izvēles rūtiņu *Custom on fail*, ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Neveiksmīgas priekšapstrādes darbības gadījumā vienums nekļūs par neatbalstītu, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.

[comment]: # ({/6024a92e-db234ea5})

[comment]: # ({3d2734e8-341c66ad})
##### Nepārbaudītas vērtības pārbaude {#checkunsupported}

Pārbaudiet, vai nevarēja iegūt nevienu vienuma vērtību.
Norādiet, kā kļūme jāapstrādā, pamatojoties uz atgrieztā kļūdas ziņojuma pārbaudi.

Parametri:

-   **scope** - atlasiet kļūdu apstrādes tvērumu:<br>*jebkura kļūda* - jebkura kļūda;<br>*kļūda atbilst* - tikai kļūda, kas atbilst regulārajai izteiksmei, kas norādīta laukā *pattern*;<br>*kļūda neatbilst* - tikai kļūda, kas neatbilst regulārajai izteiksmei, kas norādīta laukā *pattern*<br>
-   **pattern** - regulārā izteiksme, ar kuru salīdzināt kļūdu.
Ja parametrā scope ir atlasīts *jebkura kļūda*, šis lauks netiek parādīts.
Ja tas tiek parādīts, šis lauks ir obligāts.<br>

Komentāri:

-   Parasti vērtības neesamība/neizdošanās to iegūt noved pie tā, ka vienums kļūst neatbalstīts.
Šī priekšapstrādes darbība ļauj mainīt šo uzvedību.
Ja atzīmējat izvēles rūtiņu *Custom on fail* (šai priekšapstrādes darbībai tā vienmēr ir atzīmēta un pelēkota), ir iespējams norādīt pielāgotas kļūdu apstrādes opcijas: vai nu atmest vērtību, iestatīt norādītu vērtību vai iestatīt norādītu kļūdas ziņojumu.
Ja priekšapstrādes darbība neizdodas, vienums nekļūs neatbalstīts, ja ir atlasīta opcija atmest vērtību vai iestatīt norādītu vērtību.
-   Šī priekšapstrādes darbība pārbauda tikai to, vai nevarēja iegūt nevienu vienuma vērtību.
Tā nepārbauda, piemēram, vai iegūtās vērtības tips (piemēram, virkne) atbilst vienuma informācijas tipam (piemēram, skaitlisks); sīkāku informāciju skatiet sadaļā [Priekšapstrādes piemēri](/manual/config/items/preprocessing/examples#checking-for-not-supported-value).
Ja ir tipu neatbilstība, vienums joprojām var kļūt neatbalstīts pēc visu priekšapstrādes darbību izpildes.
Lai pārbaudītu tipu neatbilstību, varat izmantot, piemēram, priekšapstrādes darbību *Custom multiplier*; skatiet [Priekšapstrādes piemēri](/manual/config/items/preprocessing/examples#checking-retrieved-value-type).
-   Regulāro izteiksmju grupu uztveršana tiek atbalstīta laukos *Set value to* vai *Set error to*.
Izmantojiet \\N (kur N=1…9), lai iegūtu N-to atbilstošo grupu; izmantojiet \\0, lai iegūtu atbilstošo tekstu;
-   Šīs darbības vienmēr tiek izpildītas kā pirmās priekšapstrādes darbības un pēc izmaiņu saglabāšanas vienumā tiek novietotas virs visām pārējām;
-   Tiek atbalstītas vairākas darbības *Nepārbaudītas vērtības pārbaude* norādītajā secībā.
Darbība *jebkura kļūda* tiks automātiski novietota kā pēdējā darbība šajā grupā.

[comment]: # ({/3d2734e8-341c66ad})

[comment]: # ({0b405498-d47b91be})
##### Atmest nemainīto {#discardunchanged}

Atmest vērtību, ja tā nav mainījusies.

Komentāri:

-   Ja vērtība tiek atmesta, tā netiek saglabāta datubāzē, un Zabbix serveris nezina, ka šī vērtība tika saņemta.
Trigeru izteiksmes netiks novērtētas, un rezultātā saistītajiem trigeriem netiks izveidotas/atrisinātas nekādas problēmas.
Funkcijas darbosies, tikai pamatojoties uz datiem, kas faktiski ir saglabāti datubāzē.
Tā kā tendences tiek veidotas, pamatojoties uz datiem datubāzē, ja stundas laikā netiek saglabāta neviena vērtība, tad arī par šo stundu nebūs tendenču datu.<br>
-   Katram vienumam var norādīt tikai vienu ierobežošanas opciju.

[comment]: # ({/0b405498-d47b91be})

[comment]: # ({10a1cfc0-8c5e07e4})
##### Atmest nemainīgu ar sirdspukstu {#discardwithheartbeat}

Atmest vērtību, ja tā nav mainījusies noteiktajā laika periodā (sekundēs).

Komentāri:

-   Tiek atbalstītas pozitīvas veselu skaitļu vērtības, lai norādītu sekundes (minimums — 1 sekunde);<br>
-   Var izmantot laika sufiksus (piemēram, 30s, 1m, 2h, 1d);<br> 
-   Var izmantot lietotāja makrosus un zema līmeņa atklāšanas makrosus;<br>
-   Ja vērtība tiek atmesta, tā netiek saglabāta datubāzē, un Zabbix serveris nezina, ka šī vērtība tika saņemta.
Netiks novērtētas nekādas trigeru izteiksmes, un rezultātā saistītajiem trigeriem netiks izveidotas/atrisinātas nekādas problēmas.
Funkcijas darbosies tikai, pamatojoties uz datiem, kas faktiski ir saglabāti datubāzē.
Tā kā tendences tiek veidotas, pamatojoties uz datiem datubāzē, ja stundas laikā netiek saglabāta neviena vērtība, tad arī par šo stundu nebūs tendenču datu.<br>
-   Katram vienumam var norādīt tikai vienu droselēšanas opciju.

[comment]: # ({/10a1cfc0-8c5e07e4})

[comment]: # ({ac2324fc-22c3f12f})
##### Prometheus pattern {#prometheus}

Izmantojiet šo vaicājumu, lai iegūtu nepieciešamos datus no Prometheus metrikām.

Skatiet [Prometheus pārbaudes](/manual/config/items/itemtypes/http/prometheus), lai iegūtu vairāk informācijas.

[comment]: # ({/ac2324fc-22c3f12f})

[comment]: # ({d6420a85-473a4a28})
##### Prometheus uz JSON {#promtojson}

Pārveido nepieciešamos Prometheus metriku datus JSON formātā.

Skatiet [Prometheus pārbaudes](/manual/config/items/itemtypes/http/prometheus), lai iegūtu vairāk informācijas.

[comment]: # ({/d6420a85-473a4a28})

[comment]: # ({aa14ab5c-480b3bc3})
#### Makrosu atbalsts

[Tietotāja makrosi](/manual/config/macros/user_macros) un lietotāja makrosi ar
kontekstu tiek atbalstīti šeit: 

-   priekšapstrādes soļa parametros, tostarp JavaScript kodā;
-   pielāgotās kļūdu apstrādes parametros (*Set value to* un *Set error to* laukos).

::: noteclassic
Makrosa konteksts tiek ignorēts, kad makross tiek aizstāts ar tā vērtību.
Makrosa vērtība tiek ievietota kodā tāda, kāda tā ir; pirms vērtības ievietošanas JavaScript kodā nav iespējams pievienot papildu atsoļošanu.
Lūdzu, ņemiet vērā, ka dažos gadījumos tas var izraisīt JavaScript kļūdas.
:::

[comment]: # ({/aa14ab5c-480b3bc3})

[comment]: # ({f9ce438a-3360fec9})
#### Testēšana

Skatiet [priekšapstrādes testēšanu](/manual/config/items/preprocessing/testing).

[comment]: # ({/f9ce438a-3360fec9})
