2 Globalna korelacja zdarzeń
Omówienie
Globalna korelacja zdarzeń umożliwia uwzględnienie wszystkich metryk monitorowanych przez Zabbix i tworzenie korelacji.
Możliwe jest korelowanie zdarzeń tworzonych przez całkowicie różne wyzwalacze oraz stosowanie tych samych operacji do wszystkich tych zdarzeń. Tworząc inteligentne reguły korelacji, można uniknąć tysięcy powtarzających się powiadomień i skupić się na przyczynach źródłowych problemu!
Globalna korelacja zdarzeń to zaawansowany mechanizm, który pozwala uniezależnić się od logiki problemów i ich rozwiązywania opartej na jednym wyzwalaczu. Dotychczas pojedyncze zdarzenie problemu było tworzone przez jeden wyzwalacz i byliśmy zależni od tego samego wyzwalacza podczas rozwiązywania problemu. Nie mogliśmy rozwiązać problemu utworzonego przez jeden wyzwalacz za pomocą innego wyzwalacza. Jednak dzięki korelacji zdarzeń opartej na tagowaniu zdarzeń jest to możliwe.
Na przykład wyzwalacz dziennika może zgłaszać problemy aplikacji, podczas gdy wyzwalacz odpytywania może zgłaszać, że aplikacja działa. Korzystając z tagów zdarzeń, można oznaczyć wyzwalacz dziennika tagiem status:down, a wyzwalacz odpytywania tagiem status:up. Następnie w globalnej regule korelacji można powiązać te wyzwalacze i przypisać do tej korelacji odpowiednią operację, taką jak zamknięcie starych zdarzeń.
W innym zastosowaniu globalna korelacja może identyfikować podobne wyzwalacze i stosować do nich tę samą operację. Co by było, gdyby można było otrzymywać tylko jeden raport o problemie dla każdego problemu z portem sieciowym? Nie ma potrzeby zgłaszania ich wszystkich. Jest to również możliwe dzięki globalnej korelacji zdarzeń.
Globalną korelację zdarzeń konfiguruje się w regułach korelacji. Reguła korelacji określa, w jaki sposób nowe zdarzenia problemów są dopasowywane do istniejących zdarzeń problemów oraz co należy zrobić w przypadku dopasowania (zamknąć nowe zdarzenie, zamknąć dopasowane stare zdarzenia, generując odpowiednie zdarzenia OK). Jeśli problem zostanie zamknięty przez globalną korelację, informacja o tym jest wyświetlana w kolumnie Info w sekcji Monitoring > Problems.
Konfigurowanie globalnych reguł korelacji jest dostępne tylko dla użytkowników na poziomie Super Admin.
Korelację zdarzeń należy konfigurować bardzo ostrożnie, ponieważ może ona negatywnie wpłynąć na wydajność przetwarzania zdarzeń lub, jeśli zostanie skonfigurowana nieprawidłowo, zamknąć więcej zdarzeń, niż zamierzano (w najgorszym przypadku mogą zostać zamknięte nawet wszystkie zdarzenia problemów).
Aby bezpiecznie skonfigurować globalne reguły korelacji, należy przestrzegać następujących ważnych wskazówek:
- Ogranicz zakres korelacji. Zawsze ustawiaj unikatowy tag dla nowego zdarzenia, które jest dopasowywane do starych zdarzeń, i używaj warunku korelacji New event tag name.
- Dodaj jawny warunek dotyczący starego zdarzenia podczas korzystania z opcji Close old events. Zawsze dodawaj co najmniej jeden warunek Old event (na przykład Old event tag name, Old event tag value lub Event tag pair) podczas wybierania opcji Close old events; w przeciwnym razie reguła może dopasować i zamknąć niepowiązane istniejące zdarzenia problemów (w najgorszym przypadku wszystkie problemy). Preferuj opcję Event tag pair do dopasowywania wartości uzyskiwanych w czasie działania (host:port, identyfikator sesji itp.) i w miarę możliwości dodatkowo zawężaj dopasowanie według hosta lub grupy hostów.
- Unikaj używania typowych nazw tagów, które mogą ostatecznie zostać użyte przez różne konfiguracje korelacji.
- Ogranicz liczbę reguł korelacji do tych, których rzeczywiście potrzebujesz.
Zobacz także: znane problemy.
Konfiguracja
Aby skonfigurować globalnie reguły korelacji zdarzeń:
- Przejdź do Data collection > Event correlation
- Kliknij Create event correlation po prawej stronie (lub kliknij nazwę korelacji, aby edytować istniejącą regułę)
- Wprowadź parametry reguły korelacji w formularzu

Wszystkie obowiązkowe pola wejściowe są oznaczone czerwoną gwiazdką.
| Parameter | Description |
|---|---|
| Name | Unikalna nazwa reguły korelacji. |
| Type of calculation | Dostępne są następujące opcje obliczania warunków: And - wszystkie warunki muszą być spełnione Or - wystarczy, że spełniony jest jeden warunek And/Or - AND dla różnych typów warunków oraz OR dla tego samego typu warunku Custom expression - zdefiniowana przez użytkownika formuła obliczeniowa do oceny warunków akcji. Musi zawierać wszystkie warunki (reprezentowane przez wielkie litery A, B, C, ...) i może zawierać spacje, tabulatory, nawiasy ( ), and (z uwzględnieniem wielkości liter), or (z uwzględnieniem wielkości liter), not (z uwzględnieniem wielkości liter). |
| Conditions | Lista warunków. Szczegóły konfiguracji warunku znajdują się poniżej. |
| Description | Opis reguły korelacji. |
| Operations | Zaznacz pole wyboru operacji, którą należy wykonać, gdy zdarzenie zostanie skorelowane. Dostępne są następujące operacje: Close old events - zamyka stare zdarzenia, gdy wystąpi nowe zdarzenie. Zawsze dodawaj warunek oparty na starym zdarzeniu podczas używania operacji Close old events, w przeciwnym razie wszystkie istniejące problemy mogą zostać zamknięte. Close new event - zamyka nowe zdarzenie, gdy wystąpi. Ostrzeżenie! Nie pozostawiaj pustych warunków starego/nowego zdarzenia podczas używania Close old events/Close new event. Jeśli wybierzesz operację Close old events bez dodania warunku pasującego do starego zdarzenia, Zabbix może dopasować wszystkie istniejące stare zdarzenia i zamknąć je. Zawsze dodawaj jawny warunek starego zdarzenia (na przykład Old event tag name lub Event tag pair) podczas używania Close old events. Na przykład reguła, która używa tylko New event condition oraz operacji Close old events, dopasuje wszystkie stare zdarzenia spełniające (brakujące) kryteria starego zdarzenia - skutecznie zamykając stare problemy. |
| Enabled | Jeśli zaznaczysz to pole wyboru, reguła korelacji zostanie włączona. |
Aby skonfigurować szczegóły nowego warunku, kliknij
w bloku Conditions.
Otworzy się okno podręczne, w którym można edytować szczegóły warunku.

| Parameter | Description |
|---|---|
| New condition | Wybierz warunek do korelowania zdarzeń. Uwaga, że jeśli nie zostanie określony warunek starego zdarzenia, wszystkie stare zdarzenia mogą zostać dopasowane i zamknięte. Podobnie, jeśli nie zostanie określony warunek nowego zdarzenia, wszystkie nowe zdarzenia mogą zostać dopasowane i zamknięte. Dostępne są następujące warunki: Old event tag name - określ nazwę tagu starego zdarzenia do dopasowania. New event tag name - określ nazwę tagu nowego zdarzenia do dopasowania. New event host group - określ grupę hostów nowego zdarzenia do dopasowania. Event tag pair - określ nazwę tagu nowego zdarzenia i nazwę tagu starego zdarzenia do dopasowania. W tym przypadku dopasowanie nastąpi, jeśli wartości tagów w obu zdarzeniach będą zgodne. Nazwy tagów nie muszą być zgodne. Ta opcja jest przydatna do dopasowywania wartości w czasie działania, które mogą nie być znane w momencie konfiguracji (zobacz także Przykład). Old event tag value - określ nazwę tagu starego zdarzenia i wartość do dopasowania, używając następujących operatorów: equals - ma wartość tagu starego zdarzenia does not equal - nie ma wartości tagu starego zdarzenia contains - zawiera ciąg znaków w wartości tagu starego zdarzenia does not contain - nie zawiera ciągu znaków w wartości tagu starego zdarzenia New event tag value - określ nazwę tagu nowego zdarzenia i wartość do dopasowania, używając następujących operatorów: equals - ma wartość tagu nowego zdarzenia does not equal - nie ma wartości tagu nowego zdarzenia contains - zawiera ciąg znaków w wartości tagu nowego zdarzenia does not contain - nie zawiera ciągu znaków w wartości tagu nowego zdarzenia |
Ponieważ możliwa jest nieprawidłowa konfiguracja, a podobne tagi zdarzeń mogą być tworzone dla problemów niepowiązanych, przejrzyj przypadki opisane poniżej!
- Rzeczywiste tagi i wartości tagów stają się widoczne dopiero po wyzwoleniu wyzwalacza. Jeśli użyte wyrażenie regularne jest nieprawidłowe, zostaje ono po cichu zastąpione ciągiem *UNKNOWN*. Jeśli początkowe zdarzenie problemu z wartością tagu *UNKNOWN* zostanie pominięte, mogą pojawić się kolejne zdarzenia OK z tą samą wartością tagu *UNKNOWN*, które mogą zamknąć zdarzenia problemowe, których nie powinny były zamknąć.
- Jeśli użytkownik używa makra {ITEM.VALUE} bez funkcji makr jako wartości tagu, obowiązuje ograniczenie do 255 znaków. Gdy komunikaty logów są długie, a pierwsze 255 znaków nie zawiera konkretnych informacji, może to również skutkować podobnymi tagami zdarzeń dla niepowiązanych problemów.
Przykład
Zatrzymaj powtarzające się zdarzenia problemów z tego samego portu sieciowego.

Ta globalna reguła korelacji będzie korelować problemy, jeśli wartości tagów host i port istnieją w wyzwalaczu i są takie same w oryginalnym oraz nowym zdarzeniu.
Operacja zamknie nowe zdarzenia problemów na tym samym porcie sieciowym, pozostawiając otwarty tylko oryginalny problem.