6 Taggen

Overzicht

Er is een optie om verschillende entiteiten in Zabbix van tags te voorzien. Tags kunnen gedefinieerd worden voor:

  • sjablonen (templates)
  • hosts
  • items
  • web scenario's
  • triggers
  • services (diensten)
  • sjabloon items en triggers
  • host-, item- en triggerprototypen

Tags hebben verschillende toepassingen, voornamelijk om gebeurtenissen te markeren. Als entiteiten getagd zijn, worden de overeenkomstige nieuwe gebeurtenissen dienovereenkomstig gemarkeerd:

  • bij getagde sjablonen - alle hostproblemen gecreëerd door relevante entiteiten (items, triggers, etc) van dit sjabloon worden gemarkeerd
  • bij getagde hosts - elk probleem van de host wordt gemarkeerd
  • bij getagde items, web scenario's - alle data/problemen van dit item of web scenario worden gemarkeerd
  • bij getagde triggers - elk probleem van deze trigger wordt gemarkeerd

Een probleemgebeurtenis erft alle tags van de hele keten van sjablonen, hosts, items, web scenario's en triggers. Volledig identieke tag:waarde-combinaties (na opgeloste macros) worden samengevoegd tot één combinatie in plaats van gedupliceerd te worden bij het markeren van de gebeurtenis.

Het hebben van aangepaste gebeurtenistags zorgt voor meer flexibiliteit. Belangrijk is dat gebeurtenissen kunnen worden gecorreleerd op basis van gebeurtenistags. In andere toepassingen kunnen acties gedefinieerd worden op basis van getagde gebeurtenissen. Problemen van items kunnen gegroepeerd worden op basis van tags. Probleemtags kunnen ook gebruikt worden om problemen te koppelen aan services.

Het taggen wordt gerealiseerd als een paar van tagnaam en waarde. Je kunt alleen de naam gebruiken of deze koppelen aan een waarde:

MySQL, Service:MySQL, Services, Services:Customer, Applications, Application:Java, Priority:High 

Een entiteit (sjabloon, host, item, web scenario, trigger of gebeurtenis) kan getagd worden met dezelfde naam, maar verschillende waarden - deze tags worden niet als 'duplicaten' beschouwd. Op dezelfde manier kunnen een tag zonder waarde en dezelfde tag met waarde tegelijkertijd gebruikt worden.

Gebruiksscenario's

Enkele gebruiksscenario's voor deze functionaliteit zijn als volgt:

  1. Markeer trigger-gebeurtenissen in de frontend:
    • Definieer een tag op trigger-niveau, bijvoorbeeld scope:prestatie;
    • Alle problemen die door deze trigger zijn gecreëerd, worden gemarkeerd met deze tag.
  2. Markeer alle problemen die geërfd zijn van sjablonen:
    • Definieer een tag op sjabloon-niveau, bijvoorbeeld doel:MySQL;
    • Alle hostproblemen gecreëerd door triggers van dit sjabloon worden gemarkeerd met deze tag.
  3. Markeer alle hostproblemen:
    • Definieer een tag op host-niveau, bijvoorbeeld service:Jira;
    • Alle problemen van de hosttriggers worden gemarkeerd met deze tag.
  4. Groepeer gerelateerde items:
    • Definieer een tag op item-niveau, bijvoorbeeld component:cpu;
    • Gebruik in de sectie Laatste gegevens de tagfilter om alle items te bekijken die zijn getagd als component:cpu.
  5. Identificeer problemen in een logbestand en sluit ze afzonderlijk:
    • Definieer tags in de logtrigger die gebeurtenissen identificeren met behulp van gegevensextractie door de {{ITEM.VALUE<N>}.regsub()}-macro;
    • Stel in de triggereigenschappen de modus voor het genereren van probleemgebeurtenissen in op meervoudig;
    • Gebruik in de triggereigenschappen gebeurteniscorrelatie: selecteer de optie dat een OK-gebeurtenis alleen overeenkomende gebeurtenissen sluit en kies de tag voor overeenkomende gebeurtenissen;
    • Bekijk probleemgebeurtenissen die zijn gemaakt met een tag en afzonderlijk zijn gesloten.
  6. Gebruik het om meldingen te filteren:
    • Definieer tags op triggerniveau om gebeurtenissen te markeren met verschillende tags;
    • Gebruik tagfiltering in actievoorwaarden om alleen meldingen te ontvangen voor gebeurtenissen die overeenkomen met taggegevens.
  7. Gebruik informatie die is geëxtraheerd uit itemwaarde als tagwaarde:
    • Gebruik een {{ITEM.VALUE<N>}.regsub()}-macro in de tagwaarde;
    • Bekijk tagwaarden in MonitoringProblemen als geëxtraheerde gegevens uit de itemwaarde.
  8. Identificeer problemen beter in meldingen:
    • Definieer tags op triggerniveau;
    • Gebruik een {EVENT.TAGS}-macro in de probleemmelding;
    • Identificeer eenvoudiger welke applicatie/dienst bij de melding hoort.
  9. Vereenvoudig configuratietaken door tags op sjabloonniveau te gebruiken:
    • Definieer tags op sjabloon-triggerniveau;
    • Bekijk deze tags op alle triggerelementen die zijn gemaakt van sjabloon-triggers.
  10. Maak triggerelementen met tags vanuit ontdekking van lager niveau (LLD):
    • Definieer tags op trigger-prototype-niveau;
    • Gebruik LLD-macro's in de tagnaam of waarde;
    • Bekijk deze tags op alle triggerelementen die zijn gemaakt van trigger-prototypes.
  11. Koppel services met servicetags:
    • Definieer servicacties voor services met overeenkomende tags;
    • Gebruik servicetags om een service te koppelen aan een SLA voor SLA-berekeningen.
  12. Koppel services aan problemen met probleemtags:
    • Geef in de serviceconfiguratie de probleemtag op, bijvoorbeeld doel:MySQL;
    • Problemen met de overeenkomende tag worden automatisch gecorreleerd met de service;
    • De status van de service zal veranderen naar de status van het probleem met de hoogste ernst.
  13. Onderdruk problemen wanneer een host in onderhoudsmodus is:
    • Definieer tags in Onderhoudsperioden om alleen problemen met overeenkomende tags te onderdrukken.
  14. Verleen toegang aan gebruikersgroepen:
    • Specificeer tags in de gebruikersgroep configuratie om alleen problemen met overeenkomende tags te laten bekijken.

Configuratie

Tags kunnen worden ingevoerd in een speciale tab, bijvoorbeeld in triggerconfiguratie:

Macro-ondersteuning

Ingebouwde en gebruikersmacro's in tags worden opgelost op het moment van de gebeurtenis. Totdat de gebeurtenis heeft plaatsgevonden, worden deze macro's onopgelost weergegeven in de Zabbix-frontend. Macro's voor lager-niveau-ontdekking worden opgelost tijdens het ontdekkingsproces.

De volgende macro's kunnen worden gebruikt in triggertags:

  • {ITEM.VALUE}, {ITEM.LASTVALUE}, {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} en {HOST.ID} macro's kunnen gebruikt worden om de tagnaam of tagwaarde in te vullen.
  • {INVENTORY.*} macro's kunnen worden gebruikt om hostinventariswaarden van één of meerdere hosts te refereren in een triggervoorwaarde.
  • Gebruikersmacro's en gebruikersmacro's met context worden ondersteund voor de tagnaam/waarde; context kan lager-niveau-ontdekkingsmacro's bevatten.
  • Lage-niveau-ontdekkingsmacro's kunnen gebruikt worden voor de tagnaam/waarde in triggerelement-prototypen.

De volgende macro's kunnen worden gebruikt in meldingen op basis van triggerelementen:

  • {EVENT.TAGS} en {EVENT.RECOVERY.TAGS}-macro's worden opgelost naar een door komma's gescheiden lijst van gebeurtenistags of herstelgebeurtenistags.
  • {EVENT.TAGSJSON} en {EVENT.RECOVERY.TAGSJSON}-macro's worden opgelost naar een JSON-array met gebeurtenistag objecten of herstelgebeurtenistagobjecten.

De volgende macro's kunnen worden gebruikt in sjabloon-, host-, item- en web scenario-tags:

  • {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} en {HOST.ID}-macro's
  • {INVENTORY.*} macro's
  • Gebruikersmacro's
  • Lage-niveau-ontdekkingsmacro's kunnen gebruikt worden in item-prototype-tags.

De volgende macro's kunnen worden gebruikt in host-prototype-tags:

Uittreksel van subreeksen in triggertags

Uittreksel van subreeksen wordt ondersteund om de tagnaam of tagwaarde in te vullen met behulp van een macro functie - door een reguliere expressie toe te passen op de waarde verkregen door de {ITEM.VALUE}, {ITEM.LASTVALUE}-macro of een lager-niveau-ontdekkingsmacro. Bijvoorbeeld:

{{ITEM.VALUE}.regsub(pattern, output)}
       {{ITEM.VALUE}.iregsub(pattern, output)}
       
       {{#LLDMACRO}.regsub(pattern, output)}
       {{#LLDMACRO}.iregsub(pattern, output)}

Tagnaam en -waarde worden afgekapt tot 255 tekens als hun lengte na het oplossen van de macro 255 tekens overschrijdt.

Zie ook: Het gebruik van macrofuncties in lager-niveau-ontdekkingsmacro's voor gebeurtenis-tagging.

Weergave van gebeurtenistags

Als tags gedefinieerd zijn, kunnen ze worden bekeken bij nieuwe gebeurtenissen in:

  • MonitoringProblemen
  • MonitoringProblemenGebeurtenisdetails
  • DashboardsProblemen-widget

Alleen de eerste drie tagvermeldingen kunnen worden weergegeven. Als er meer dan drie tagvermeldingen zijn, wordt dit aangegeven door drie puntjes. Als je met je muis over deze drie puntjes rolt, worden alle tagvermeldingen weergegeven in een pop-up venster.

Merk op dat de volgorde waarin tags worden weergegeven, wordt beïnvloed door tagfilters en de optie Tagweergaveprioriteit in het filter van MonitoringProblemen of de Problemen-dashboardwidget.