Kontrola živosti parseru v xTrace

Slouží pro ověření toho, že parser je zapnutý a není z nějakého důvodu v chybovém stavu. Funguje na základě komunikace mezi xTracem a parserem podle nastaveného typu komunikace.

Nastavení xTrace

Zapnutí této kontroly se provádí na modulech, které zpracovávají univerzální strukturu, přesněji pokud ji chceme zapnout na laseru, tak ji zapneme na modulu LaserUniParser a pokud se pracuje s proceními daty tak na modulu UNIVERSAL_PARSER. U obou modulů se nastaví hodnota parametru TypeOfParserHealthNotification na hodnotu různou od None a podle zadaného typu může být požadováno vyplnění dalších parametrů. Seznam toho co je možné zadat se nachází v kapitole Aktuální typy kontrol.

Nastavení parseru

Zapnutí předávání stavu se dělá v souboru appsettings.json v oddílu HealthCheck v parametru UseHealthCheck. Typ jakým chceme předávat informace o živosti parseru do xTrace se definuje v parametru TypeOfHealthCheck. Pokud chceme při problému parseru jej vypnout tak to můžeme provést nastavením parametru StopApplicationOnError na hodnotu True. Možné hodnoty parametru UseHealthCheck je možné naleznout v kapitole Aktuální typy kontrol.

Aktuální typy kontrol

Typ kontroly Popis Požadované parametry v xTrace Požadované parametry v parseru
None Nebude probíhat žádná kontrola - -
File Kontrola probíhá na základě hodnot v souboru typu ptx do kterého parser zapisuje svůj aktuální stav živosti Potřeba zadat do parametru ParserHealthNotificationFilePath cestu na které se nacházejí soubory do kterých zapisuje parser Potřeba zadat do parametru FilePathForNotifyXtrace cestu na kterou parser bude generovat soubory se svým stavem

Jak to funguje

Následující kapitola popisuje jak fungují jednotlivé módy kontrol.

Varianta None

Nedochází k žádné kontrole a aplikace xTrace a parser si každý žije svým vlastním životem.

Varianta File

Funguje na principu, kdy parser cyklicky zapisuje do souboru typu ptx, což je jen obyčejný textový soubor s vlastní příponou. Jeho obsahem jsou řádky, které obsahují datum a čas zápisu, aktuální stav parseru a aktuální periodu se kterou parser do souboru zapisuje. Tento řádek se zpracuje xTrace a nastaví svoji periodu se kterou kontroluje tento soubor na stejnou hodnotu, což způsobí, že dojde k přečtení každého řádku. Podle hodnoty stavu parseru se v xTrace buď zpráva (UNIVERSALPARSER_ParserIsRunning / UNIVERSALPARSER_ParserIsInErrorState) na kterou je možné nastavit blokaci neb poslání alarmu.