3.2. Monitorování
Správnost běhu a fungování všech částí komponenty Imwhooser je možné kontrolovat pomocí k tomu určeného rozhraní. To umožňuje přímé monitorování pomocí systému Prometheus, nebo pomocí nástrojů, které jsou schopny zpracovat data ve formátu OpenMetrics.
Monitorovací rozhraní běží na stejném portu, na kterém je dostupná samotná
komponenta Imwhooser (viz Monitorování). V příkladech níže je použit
port 8089; pokud komponenta běží na jiném portu, použijte odpovídající
číslo. Rozhraní je určeno pro přístup z příkazové řádky serveru (lokálně),
nikoli z webového prohlížeče.
3.2.1. Zjištění stavu komponenty
Informace o stavu komponenty získáte příkazem:
curl --silent localhost:8089/actuator/health
Pokud je komponenta v pořádku, vrací stav UP. V opačném případě vrací stav DOWN a důvod selhání
nebo uvedená stránka není dostupná.
Příklad odpovědi při stavu UP:
{
"status": "UP"
}
3.2.2. Zjištění stavu vstupních front
Pro každý nakonfigurovaný vstupní systém jsou k dispozici 3 metriky:
počet zpracovaných záznamů:
queue.countdoba v sekundách od počátku chybového stavu:
queue.error_at, hodnota -1 znamená, že fronta není v chybovém stavu a poslední zpracování bylo úspěšnédoba v sekundách od posledního zpracování nezávisle na tom, zda úspěšné či neúspěšné:
queue.last_check
Po startu komponenty jsou všechny metriky nastaveny na výchozí hodnoty:
queue.countna hodnotu 0
queue.last_checkna hodnotu -1
queue.error_atna hodnotu -1.
Součástí každé metriky je i název systému, pro který je metrika určena.
Možné hodnoty názvu systému jsou:
peva- pro systém PeVa
whois- pro systém WhoIs
elza- pro systém Elza - viz Zjištění stavu fronty do Elza
Metriky získáte příkazem (výpis se filtruje na metriky front pomocí grep,
samotný endpoint /actuator/prometheus vrací podstatně rozsáhlejší výstup):
curl --silent localhost:8089/actuator/prometheus | grep "^queue"
Příklad odpovědi:
queue_count_total{name="whois"} 0.0
queue_last_check{name="whois"} 22.0
queue_error_at{name="whois"} -1.0
3.2.3. Zjištění stavu fronty do Elza
Pro odchozí frontu do Elza jsou k dispozici tyto metriky:
počet zpracovaných (odeslaných) záznamů:
queue.countpočet zakázaných záznamů pro přenos:
queue.count_disabledpočet záznamů, které uvízly ve frontě s chybou (sloupec
statusnení null):queue.count_failedpočet neúspěšných pokusů o odeslání:
queue.error_countdoba v sekundách od počátku chybového stavu:
queue.error_at, hodnota -1 znamená, že fronta není v chybovém stavu a poslední zpracování bylo úspěšnédoba v sekundách od posledního zpracování nezávisle na tom, zda úspěšné či neúspěšné:
queue.last_check
Po startu komponenty jsou metriky nastaveny na výchozí hodnoty:
queue.countna hodnotu 0
queue.count_disabledna hodnotu odpovídající počtu zakázaných záznamů v DB
queue.count_failedna hodnotu odpovídající počtu chybných záznamů v DB
queue.error_countna hodnotu 0
queue.last_checkna hodnotu -1
queue.error_atna hodnotu -1.
Název systému pro Elza je elza.
Metriky získáte příkazem:
curl --silent localhost:8089/actuator/prometheus | grep "^queue"
Příklad odpovědi:
queue_count_total{name="elza"} 0.0
queue_count_disabled{name="elza"} 2.0
queue_count_failed{name="elza"} 0.0
queue_error_count_total{name="elza"} 0.0
queue_last_check{name="elza"} 22.0
queue_error_at{name="elza"} -1.0