This is a translation of the original English documentation page. Help us make it better.

12 Trapper items

Overzicht

Trapper-items accepteren inkomende gegevens in plaats van ernaar te zoeken.

Het is handig voor alle gegevens die je mogelijk in Zabbix wilt "pushen".

Om een trapper-item te gebruiken, moet je:

  • een trapper-item hebben ingesteld in Zabbix
  • de gegevens naar Zabbix sturen
Itemconfiguratie

Om een trapper-item te configureren:

  • Ga naar: DatacollectieHosts
  • Klik op Items in de rij van de host
  • Klik op Item toevoegen
  • Voer de parameters van het item in op het formulier

Alle verplichte invoervelden zijn gemarkeerd met een rood asterisk.

De velden die specifieke informatie vereisen voor trapper-items zijn:

Type Selecteer hier Zabbix-trapper.
Sleutel Voer een sleutel in die zal worden gebruikt om het item te herkennen bij het verzenden van gegevens.
Type informatie Selecteer het type informatie dat overeenkomt met het formaat van de gegevens die worden verzonden.
Toegestane hosts Lijst van door komma's gescheiden IP-adressen, optioneel in CIDR-notatie, of DNS-namen.
Indien gespecificeerd, worden inkomende verbindingen alleen geaccepteerd van de hier vermelde hosts.
Als IPv6-ondersteuning is ingeschakeld, worden '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' gelijk behandeld en '::/0' zal elk IPv4- of IPv6-adres toestaan.
'0.0.0.0/0' kan worden gebruikt om elk IPv4-adres toe te staan.
Let op dat "IPv4-compatibele IPv6-adressen" (0000::/96 voorvoegsel) worden ondersteund maar verouderd zijn volgens RFC4291.
Voorbeeld: 127.0.0.1, 192.168.1.0/24, 192.168.3.1-255, 192.168.1-10.1-255, ::1,2001:db8::/32, mysqlserver1, zabbix.example.com, {HOST.HOST}
Spaties en gebruikersmacro's zijn toegestaan in dit veld sinds Zabbix 2.2.0.
Hostmacro's {HOST.HOST}, {HOST.NAME}, {HOST.IP}, {HOST.DNS}, {HOST.CONN} zijn toegestaan in dit veld sinds Zabbix 4.0.2.

Het kan tot 60 seconden duren nadat u het item heeft opgeslagen voordat de server de wijzigingen oppikt uit een configuratiecachupdate, voordat u waarden kunt verzenden.

Sending data

Sending data to Zabbix server or proxy is possible using the Zabbix sender utility or Zabbix sender protocol. Sending data to Zabbix server is also possible using the history.push API method.

Gegevens verzenden

In het eenvoudigste geval kunnen we het hulpprogramma zabbix_sender gebruiken om wat 'testwaarde' te verzenden:

zabbix_sender -z <server IP-adres> -p 10051 -s "Nieuwe host" -k trap -o "testwaarde"

Om de waarde te verzenden gebruiken we deze sleutels:

-z - om het IP-adres van de Zabbix-server op te geven

-p - om het poortnummer van de Zabbix-server op te geven (standaard 10051)

-s - om de host op te geven (zorg ervoor dat je hier de 'technische' hostnaam gebruikt in plaats van de 'zichtbare' naam)

-k - om de sleutel van het item dat we zojuist hebben gedefinieerd op te geven

-o - om de feitelijke te verzenden waarde op te geven

Het Zabbix-trapperproces breidt geen macro's uit die worden gebruikt in de itemsleutel in een poging om het bestaan van de overeenkomstige itemsleutel te controleren voor de doelhost.

history.push

For sending data to Zabbix server using the history.push API method, you could make the following HTTP POST request containing some test values:

curl --request POST \
         --url 'https://example.com/zabbix/api_jsonrpc.php' \
         --header 'Authorization: Bearer 0424bd59b807674191e7d77572075f33' \
         --header 'Content-Type: application/json-rpc' \
         --data '{"jsonrpc":"2.0","method":"history.push","params":[{"itemid":10600,"value":"test value 1"},{"itemid":10601,"value":"test value 2"},{"itemid":99999,"value":"test value 3"}],"id":1}'

If the request is correct, the response returned by API could look as follows:

{
           "jsonrpc": "2.0",
           "result": {
               "response": "success",
               "data": [
                   {
                       "itemid": "10600"
                   },
                   {
                       "itemid": "10601",
                       "error": "Item is disabled."
                   },
                   {
                       "error": "No permissions to referred object or it does not exist."
                   }
               ]
           },
           "id": 1
       }

Errors in response data indicate that sending data for specific items has failed validation by Zabbix server. This can happen for the following reasons:

  • the user sending the data has no read permission to the item's host;
  • the host is disabled or in maintenance without data collection;
  • the item does not exist or is not yet included in the server configuration cache;
  • the item is disabled or its type is other than Zabbix trapper or HTTP agent (with trapping enabled);
  • the user's IP or DNS is not set in the item's Allowed hosts list;
  • another item has a value with a duplicate timestamp on the nanosecond level.

The absence of errors indicates that the values sent have been accepted for processing, which includes preprocessing (if any), trigger processing, and saving to the database. Note that the processing of an accepted value may also fail (for example, during preprocessing), resulting in the value being discarded.

For more information on how to work with Zabbix API, see API.

Weergave

Dit is het resultaat in Monitoring → Laatste gegevens:

Merk op dat als er een enkele numerieke waarde wordt verzonden, de gegevensgrafiek een horizontale lijn zal tonen aan de linker- en rechterkant van het tijdstip van de waarde.