event.get

Opis

integer/array event.get(object parameters)

Ta metoda umożliwia pobieranie zdarzeń zgodnie z podanymi parametrami.

Ta metoda może zwracać zdarzenia usuniętej encji, jeśli zdarzenia te nie zostały jeszcze usunięte przez housekeeper.

Ta metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do wywoływania tej metody mogą zostać cofnięte w ustawieniach roli użytkownika. Więcej informacji można znaleźć w sekcji Role użytkowników.

Parametry

(object) Parametry definiujące żądane dane wyjściowe.

Metoda obsługuje następujące parametry.

Parametr Typ Opis
eventids ID/array Zwracaj tylko zdarzenia o podanych ID.
groupids ID/array Zwracaj tylko zdarzenia utworzone przez obiekty należące do podanych grup hostów.
hostids ID/array Zwracaj tylko zdarzenia utworzone przez obiekty należące do podanych hostów.
objectids ID/array Zwracaj tylko zdarzenia utworzone przez podane obiekty.
source integer Zwracaj tylko zdarzenia o podanym typie.

Listę obsługiwanych typów zdarzeń można znaleźć na stronie obiektu event.

Domyślnie: 0 - zdarzenia wyzwalaczy.
object integer Zwracaj tylko zdarzenia utworzone przez obiekty podanego typu.

Listę obsługiwanych typów obiektów można znaleźć na stronie obiektu event.

Domyślnie: 0 - wyzwalacz.
acknowledged boolean Jeśli ustawiono true, zwracaj tylko potwierdzone zdarzenia.
action integer Zwracaj tylko zdarzenia, dla których wykonano podane akcje aktualizacji zdarzenia. W przypadku wielu akcji użyj sumy dowolnych akceptowalnych wartości bitmapy jako maski bitowej (na przykład 34 dla potwierdzenia i wyciszenia zdarzenia).
action_userids ID/array Zwracaj tylko zdarzenia z podanymi ID użytkowników, którzy wykonali akcje aktualizacji zdarzenia.
suppressed boolean Jeśli ustawiono true, zwracaj tylko wyciszone zdarzenia.
symptom boolean Jeśli ustawiono true, zwracaj tylko zdarzenia symptomów.
severities integer/array Zwracaj tylko zdarzenia o podanych poziomach ważności zdarzeń. Ma zastosowanie tylko wtedy, gdy object to wyzwalacz.
trigger_severities integer/array Zwracaj tylko zdarzenia o podanych poziomach ważności wyzwalaczy. Ma zastosowanie tylko wtedy, gdy object to wyzwalacz.
evaltype integer Metoda oceny tagów.

Możliwe wartości:
0 - (domyślnie) And/Or;
2 - Or.
tags array Zwracaj tylko zdarzenia z podanymi tagami.
Format: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Pusta tablica zwraca wszystkie zdarzenia.

Możliwe wartości operatora:
0 - (domyślnie) Zawiera;
1 - Równa się;
2 - Nie zawiera;
3 - Nie równa się;
4 - Istnieje;
5 - Nie istnieje.
eventid_from string Zwracaj tylko zdarzenia o ID większym lub równym podanemu ID.
eventid_till string Zwracaj tylko zdarzenia o ID mniejszym lub równym podanemu ID.
time_from timestamp Zwracaj tylko zdarzenia utworzone o podanym czasie lub później.
time_till timestamp Zwracaj tylko zdarzenia utworzone o podanym czasie lub wcześniej.
problem_time_from timestamp Zwraca tylko zdarzenia, które były w stanie problemu od problem_time_from, niezależnie od ich bieżącego statusu. Ma zastosowanie tylko wtedy, gdy source jest zdarzeniem wyzwalacza, a object jest wyzwalaczem. Ten parametr jest wymagany, jeśli określono problem_time_till.
problem_time_till timestamp Zwraca tylko zdarzenia, które były w stanie problemu do problem_time_till, niezależnie od ich bieżącego statusu. Ma zastosowanie tylko wtedy, gdy source jest zdarzeniem wyzwalacza, a object jest wyzwalaczem. Ten parametr jest wymagany, jeśli określono problem_time_from.
value integer/array Zwracaj tylko zdarzenia o podanych wartościach.
selectAcknowledges query Zwracaj właściwość acknowledges z aktualizacjami zdarzenia. Aktualizacje zdarzenia są sortowane w odwrotnej kolejności chronologicznej.

Obiekt aktualizacji zdarzenia ma następujące właściwości:
acknowledgeid - (ID) ID potwierdzenia;
userid - (ID) ID użytkownika, który zaktualizował zdarzenie;
clock - (timestamp) czas aktualizacji zdarzenia;
message - (string) treść wiadomości;
action - (integer) wykonana akcja aktualizacji, zobacz event.acknowledge;
old_severity - (integer) ważność zdarzenia przed tą akcją aktualizacji;
new_severity - (integer) ważność zdarzenia po tej akcji aktualizacji;
suppress_until - (timestamp) czas, do którego zdarzenie będzie wyciszone;
taskid - (ID) ID zadania, jeśli bieżące zdarzenie przechodzi zmianę rangi;
username - (string) nazwa użytkownika, który zaktualizował zdarzenie;
name - (string) imię użytkownika, który zaktualizował zdarzenie;
surname - (string) nazwisko użytkownika, który zaktualizował zdarzenie.

Obsługuje count.
selectAlerts query Zwracaj właściwość alerts z alertami wygenerowanymi przez zdarzenie. Alerty są sortowane w odwrotnej kolejności chronologicznej.
selectHosts query Zwracaj właściwość hosts z hostami zawierającymi obiekt, który utworzył zdarzenie. Obsługiwane tylko dla zdarzeń wygenerowanych przez wyzwalacze, pozycje lub reguły LLD.
selectRelatedObject query Zwracaj właściwość relatedObject z obiektem, który utworzył zdarzenie. Typ zwracanego obiektu zależy od typu zdarzenia.
selectSuppressionData query Zwracaj właściwość suppression_data z listą aktywnych okresów utrzymaniowych i ręcznych wyciszeń:
maintenanceid - (ID) ID okresu utrzymaniowego;
userid - (ID) ID użytkownika, który wyciszył zdarzenie;
suppress_until - (integer) czas, do którego zdarzenie jest wyciszone.
selectTags query Zwracaj właściwość tags z tagami zdarzenia.
filter object Zwracaj tylko te wyniki, które dokładnie odpowiadają podanemu filtrowi.

Akceptuje obiekt, w którym klucze są nazwami właściwości, a wartości są pojedynczą wartością lub tablicą wartości do dopasowania.

Nie obsługuje właściwości typu danych text data type.
sortfield string/array Sortuj wynik według podanych właściwości.

Możliwe wartości: eventid, objectid, clock.

Możliwe wartości przy użyciu razem z groupBy: objectid.

Możliwe wartości przy użyciu razem z countOutput i groupBy: objectid, rowscount.
groupBy string/array Grupuj wyniki według podanych właściwości. Określone właściwości zostaną zwrócone w wynikach.

Możliwe wartości: objectid.
countOutput boolean Te parametry opisano w komentarzu referencyjnym.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
search object
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Zwracane wartości

(integer/array) Zwraca:

  • tablicę obiektów
  • liczbę pobranych obiektów, jeśli użyto parametru countOutput, ale nie użyto parametru groupBy
  • tablicę obiektów z wynikami agregacji, jeśli użyto parametru groupBy

Przykłady

Pobieranie zdarzeń wyzwalacza

Pobierz najnowsze zdarzenia z wyzwalacza „22395”.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "selectAcknowledges": "extend",
        "selectSuppressionData": "extend",
        "selectTags": "extend",
        "objectids": "22395",
        "sortfield": ["clock", "eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "20",
            "source": "0",
            "object": "0",
            "objectid": "22395",
            "clock": "1728658089",
            "value": "0",
            "acknowledged": "0",
            "ns": "461809482",
            "name": "Średnie obciążenie jest zbyt wysokie (obciążenie na CPU powyżej 1.5 przez 5 min)",
            "severity": "0",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [],
            "opdata": "Średnie obciążenia(1m 5m 15m): (1.6328 3.0522 2.2515), liczba CPU: 2",
            "suppression_data": [],
            "suppressed": "0",
            "tags": [
                {
                    "tag": "scope",
                    "value": "capacity"
                },
                {
                    "tag": "scope",
                    "value": "performance"
                },
                {
                    "tag": "component",
                    "value": "cpu"
                },
                {
                    "tag": "class",
                    "value": "os"
                },
                {
                    "tag": "target",
                    "value": "linux"
                }
            ],
            "urls": []
        },
        {
            "eventid": "4",
            "source": "0",
            "object": "0",
            "objectid": "22395",
            "clock": "1728657737",
            "value": "1",
            "acknowledged": "1",
            "ns": "460759366",
            "name": "Średnie obciążenie jest zbyt wysokie (obciążenie na CPU powyżej 1.5 przez 5 min)",
            "severity": "3",
            "r_eventid": "20",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [
                {
                    "acknowledgeid": "1",
                    "userid": "1",
                    "clock": "1728657938",
                    "message": "Środowisko testowe. Proszę zignorować ten alert.",
                    "action": "38",
                    "old_severity": "0",
                    "new_severity": "0",
                    "suppress_until": "1728744338",
                    "taskid": "0",
                    "username": "Admin",
                    "name": "Zabbix",
                    "surname": "Administrator"
                }
            ],
            "opdata": "Średnie obciążenia(1m 5m 15m): (1.6328 3.0522 2.2515), liczba CPU: 2",
            "suppression_data": [
                {
                    "maintenanceid": "0",
                    "suppress_until": "1728744338",
                    "userid": "1"
                }
            ],
            "suppressed": "1",
            "tags": [
                {
                    "tag": "scope",
                    "value": "capacity"
                },
                {
                    "tag": "scope",
                    "value": "performance"
                },
                {
                    "tag": "component",
                    "value": "cpu"
                },
                {
                    "tag": "class",
                    "value": "os"
                },
                {
                    "tag": "target",
                    "value": "linux"
                }
            ],
            "urls": []
        }
    ],
    "id": 1
}

Pobieranie zdarzeń według przedziału czasu

Pobierz wszystkie zdarzenia utworzone między 17 a 18 października 2012 roku, w odwrotnej kolejności chronologicznej.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "time_from": "1350432000",
        "time_till": "1350518400",
        "sortfield": ["clock", "eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "20617",
            "source": "0",
            "object": "0",
            "objectid": "14282",
            "clock": "1350477816",
            "value": "1",
            "acknowledged": "0",
            "ns": "0",
            "name": "Mniej niż 25% wolnego miejsca w pamięci podręcznej historii",
            "severity": "3",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        },
        {
            "eventid": "20616",
            "source": "0",
            "object": "0",
            "objectid": "14281",
            "clock": "1350477814",
            "value": "0",
            "acknowledged": "0",
            "ns": "0",
            "name": "Procesy Zabbix trapper są zajęte w ponad 75%",
            "severity": "0",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        },
        {
            "eventid": "20615",
            "source": "0",
            "object": "0",
            "objectid": "14281",
            "clock": "1350477541",
            "value": "1",
            "acknowledged": "0",
            "ns": "0",
            "name": "Procesy Zabbix trapper są zajęte w ponad 75%",
            "severity": "3",
            "r_eventid": "20616",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "opdata": "",
            "suppressed": "0",
            "urls": []
        }
    ],
    "id": 1
}

Pobieranie zdarzeń potwierdzonych przez określonego użytkownika

Pobieranie zdarzeń potwierdzonych przez użytkownika o ID=10

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "output": "extend",
        "action": 2,
        "action_userids": [10],
        "selectAcknowledges": ["userid", "action"],
        "sortfield": ["eventid"],
        "sortorder": "DESC"
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "eventid": "503",
            "source": "0",
            "object": "0",
            "objectid": "23162",
            "clock": "1747212236",
            "value": "1",
            "acknowledged": "1",
            "ns": "413470863",
            "name": "Number of installed packages has been changed",
            "severity": "2",
            "r_eventid": "0",
            "c_eventid": "0",
            "correlationid": "0",
            "userid": "0",
            "cause_eventid": "0",
            "acknowledges": [
                {
                    "userid": "10",
                    "action": "2"
                }
            ],
            "opdata": "",
            "suppressed": "0",
            "urls": []
        }
    ],
    "id": 1
}

Pobieranie najważniejszych wyzwalaczy według liczby zdarzeń problemowych

Pobierz 5 najważniejszych wyzwalaczy o poziomach ważności „Warning”, „Average”, „High” lub „Disaster” wraz z liczbą zdarzeń problemowych w określonym przedziale czasu.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "event.get",
    "params": {
        "countOutput": true,
        "groupBy": "objectid",
        "source": 0,
        "object": 0,
        "value": 1,
        "time_from": 1672531200,
        "time_till": 1677628800,
        "trigger_severities": [2, 3, 4, 5],
        "sortfield": ["rowscount"],
        "sortorder": "DESC",
        "limit": 5
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "objectid": "232124",
            "rowscount": "27"
        },
        {
            "objectid": "29055",
            "rowscount": "23"
        },
        {
            "objectid": "253731",
            "rowscount": "18"
        },
        {
            "objectid": "254062",
            "rowscount": "11"
        },
        {
            "objectid": "23216",
            "rowscount": "7"
        }
    ],
    "id": 1
}

Zobacz także

Źródło

CEvent::get() w ui/include/classes/api/services/CEvent.php.