Bylo nebylo. To asi není ten správný začátek pro technicky ražený článek. Nicméně monitorování a údržba každého systému nám mnohdy přinese nepřeberné množství rozličných situací. Ty se podobají pohádce… hororové pohádce. Takový ten Harry Potter mezi pohádkami.
Webinář zdarma: Jak na sociální sítě, aby to mělo skutečně návratnost?
Právě za chvíli začíná náš webinář zdarma, ve kterém vám ukážu, proč 97 % podnikatelů dělá na Facebooku chyby, kvůli kterým prodělávají peníze a jak se těmto chybám vy vyhnete. Tak honem, ať vám to dnes neuteče!
Náším hlavním hrdinou/nástrojem pro shormažďování údajů o Collabimu a jejich vizualizaci je Datadog. Díky dvěma dashbordům, které máme poskládané, je ve většině případů na první pohled jasné, jak na tom náš systém právě je.
Z obrázku výše můžeme vyčíst několik zásadních informací. Nejvíce místa se dostává hlavnímu grafu, který reprezentuje měření a zpracování klíčových slov pro jednotlivé vyhledávače. Další neméně důležitou položkou je skupinka 4 čísel nad hlavním grafem. Na nich vidíme, jak si Collabim právě pohrává s vašimi jednorázovými analýzami. Za normálního stavu jsou bloky zelené, a na první dobrou víme, že se vše vykonává tak, jak má. Ve chvíli kdy některé číslo zčervená, systém zvedá pomyslný varovný prst. Někdy se vše vyřeší samo, jindy je třeba zásah někoho z nás.
Další zajímavou částí dashboardu je graf zátěže hlavního serveru “Load HQ”, ten se po většinu času příliš nezapotí. Jako zajímavé číslo bych vypíchl “SENTRY CNT”. Kdo zná Sentry, asi tuší, o co půjde. Číslo udává aktuální počet interních chyb v systému.
Tím jsme se dostali k další důležité části našeho systému pro správu a údržbu Collabimu. Sentry nám loguje aplikační problémy ve všech částech aplikace. V případě nějaké nepatřičnosti, co vás v Collabimu postihne, je tato událost zapsána do Sentry a následně se jí někdo z nás věnuje.
Kritické části aplikace mají na sebe napojené alerty. Podle závažnosti problému dostáváme informace o chybě skrze email nebo prostřednictvím sms. Komu je poslána sms zpráva, vychází z rozdělení týdenních služeb. Ty si držíme ve firemním Google kalendáři a pomocí api načítáme.
Následuje rada: “Když máš službu, tak si vypni režim Nerušit na telefonu.”
Pro zajímavost bych uvedl, že pro rozesílání sms používáme vlastní řešení se třemi SIM, které rotují. Ale o tom někdy příště.
Logy s chováním aplikace si udržujeme v Elasticsearch a nahlížíme pomocí Kibany. Koexistence Kibany, Sentry a Datadogu nám dává možnost diagnostikovat většinu problémů, bez nahlížení do kódu, a tak jednat rychle a na tom správném místě.
Stav serverů v AWS monitorujeme dvojím způsobem. Pomocí webového rozhraní i formou api a AWSClienta. Kdy si například hlídáme běžící instance jednotlivých serverů atp.. Pro snadnou údržbu a přístup ke všem instancím používáme aws-fuzzy.
Přidal bych několik “historek z natáčení” o tom, jak se nám něco sem tam nepovede.
O tom, že nám systém posílá sms o problémech jsem již psal. Druhou stranou mince je to, zda si sms získá potřebnou pozornost u adresáta. Zmíněný noční režim, kdy sms ani nerozsvítí telefon, mluví za sebe. Druhou možností je spát tak tvrdě a sms ignorovat. Tady naštěstí nastupuje na scénu starostlivá manželka se slovy: “Kdo ti to do*****e pořád píše, ty to neslyšíš?!” a zachrání tak situaci.
Druhá úsměvná příhoda se týká úklidu systému. Všichni známe problém, kdy nám logy běžících aplikací začnou konzumovat místo na disku. (To se dá samozřejmě řešit rotací logů, ale znáte to.) To se takhle rozhodnete bez milosti promazat “/var/log”, protože to jsou přece jen logy, a ty nikomu chybět nebudou. Pravda. Logy sice nikomu chybět nebudou, ale adresáře, kam si jednotlivé aplikace logy odkládají, už by mohly. Naneštěstí přesně k tomu došlo. Člověk pak nad ránem se zalepenýma očima volá kolegům, kdo a co v systému dělal naposledy. Protože neměříme.
Údržbu nepotřebuje jen aplikace a věci s ní spojené. Je třeba se starat i naše pracovní prostředí. Zásadní zlepšení pracovního prostředí se nám dostalo při stěhování. To jsme absolvovali na počátku loňského léta. Přestěhovali jsme kanceláře do zrekonstruovaného 3. patra v budově bývalého PVT na ulici Žižkova třída v Českých Budějovicích. Původně jsme sídlili nedaleko jatek na Kněžskodvorské, a o vůni pečených kůžiček ala „Láďa Hruška“ nebyla nouze.
Nová kancelář, byť ne moc prostorná dává člověku jistou volnost v tom, jak se zařídit. Ze staré desky nějaké skříně se spíchnula monitorovací tabule. Tu můžete vidět na obrázku nad odstavcem. Na desce je dvojice monitorů s výstupem z Datadogu, firemní hodiny s teploměrem a motivační cedule. Nové stoly a závodní židle byly příjemný bonus.
U teploměru jen uvedu fakt: „Teplota je u nás relativní, vzhledem k pozici nad monitorem, který docela hřeje.“ Úsloví na motivační cedulce asi není třeba moc vysvětlovat.
S tím bych zakončil dnešní vyprávění o tom, jak to děláme v Collabimu. Takže neřešte p**oviny a monitorujte svou aplikaci smysluplně.