Tímto jen krátce navazuji a rozšiřuji myšlenku odchycení a obsloužení ukončení NodeJS aplikace, kterou jsem popsal v tomto článku.
Našel jsem pěknou knihovnu async-exit-hook, která vám v aplikaci jednoduchým a elegantním způsobem dovolí ošetřit stav ukončení aplikace.
Výhodou této knihovny je, že obsloužíte nejen neošetřené výjimky, ale i interní volání funkce process.extit()
a aby toho nebylo málo, a ono se to nabízí, odchytí i SIG a KILL signály z OS směřované do vaší aplikaci.
Základní použítí:
Co je pak opravdu hezké je, že můžete po vaší aplikaci porozházet různě definice toho co byste chtěli, aby se provedlo při ukončení aplikace a knihovna zřetězí tato volání a zavolá je všechny.
To vás nenutí někde centrálně v kódu sdružit do nějaké superfunkce kompletní obsluhu exit stavu, ale naopak můžete v místě kde chcete nějak exitovat zadefinovat jen požadované chování.
Všechny exitHooky se provedou ať je máte definované kdekoliv