Elindult a nyár, teljes lendülettel. Ez nem csak az embereket viseli meg, hanem a technikát is. Szeretem tudni, melyik eszközöm milyen állapotban van, de ez nem mindig egyszerű. Ezúttal sem volt az.
A mini szerverem esetén az első kör nem volt olyan nehéz, amikor beüzemeltem. A Raspberry eszközökre van elég sok hasznos tool, csak meg kell találni és beállítani. Az RPI monitor 1 évre visszamenőleg mutatja, mi a helyzet, elég részletesen. Terheléstől kezdve a fogasztáson át a hőmérsékletet is. Ami azt illeti, ez a legfontosabb adat, mert ezeknek a pici eszközöknek nincs aktív hűtése - azaz csak a doboz szellőzése az alapértelmezett.
A hőt termelő rész egy kb 2x2 centis processzor chip, ami azért terhelésnél már hajlamos melegedni, főleg az idő előrehaladtával, ahogy öregszik. És persze azt is figyelembe véve, hogy a jól szellőző szobából már 2 éve az íróasztalban dolgozik (Egy kis barkácsolás), jóval szerényebb légmozgás mellett. Plusz azóta már gigabites hálózaton tudom macerálni, szóval simán felfűthető, még a hozzávaló fájlrendszerrel is. 3G lecserélve
Éppen ezért anno feltúrtam a chip specifikációját és megnéztem, milyen üzemi hőmérsékletet illetve működési tartományt adtak meg hozzá. Szerencsére még a normál hőmérséklet bőven belül van a kereteken, de ha éppen nagyobb mennyiségű adatot akarok írni/olvasni, huzamosabb ideig, akkor azért már melegszik.
Arról nem találtam infót, hogy az arm chipek mennyire megbízhatóan szabályozzák le magukat, vagy állnak le vészüzemmódban, ha túlmelegszenek, mint az intel chipek már régóta. Sajnos lehetséges, hogy ezen spóroltak és csak akkor veszed észre, hogy füsttel működtek, ha már kijött belőlük. Az pedig nem megoldható, hogy 0-24-ben a monitorozó alkalmazást figyelgessem.
Így gyorsan összedobtam egy scriptet, ami négy dolgot csinál:
- folyamatosan olvassa a processzor hőmérséklet értéket - linux alatt ez nem gond, egyszerű számérték
- naplóz, ha egy megadott értéknél nagyobb a hőfok
- emailben szól, ha a túllépés megtörténik
- és ha egy második értéket is túllép, leállítja a dolgokat egy értesítés után
Nem túl bonyolult összedobni egy ilyet, néhányszor már rám is szólt a ketyere, hogy lassíts, illetve hogy túltoltuk Béláim.
Ez nem is lenne probléma, egy filléres miniPC esetén, hiszen pont erről szól. Olcsó, raksz rá egy pingvint és azt építesz belőle, amit akarsz - ezzel is lehet tanulni.
Na már most nem rég szereztem be egy új routert, nem túl olcsón. Nagyon sok mindent tud, tényleg sokat. Több wifi hálózat, szülői felügyelet, forgalomszabályozás, analízis, naplózás, de speciel a saját üzemi hőfokát titokban tartja.
A webes kezelőfelülete is elég profi, amit csak tud, megmutat magáról, minden beállítást lehet finomhangolni. De a hőmérsékletet tényleg nem. Oké, akkor gondoltam mélyebbre megyek, végülis ez is egy ARM procis gép, egy linux variáns van ezen is, akkor nincs gond.
Ebben azért tévedtem. Mert ugyan lehet terminál hozzáférést engedélyezni és bóklászni az eszközön, de valószínűleg biztonsági megfontolásból eléggé körbe van zárva a user. És ha nem akarom megtörni a rendszert, akkor bizony a korábban használt megoldásomról le kell mondani, mert még telepíteni sem enged a korlátozás. Amit enged, az nagyon alap funkció, a processzor chip hőfokát kiolvashatom belőle - de még naplózni sem lehet, nem hogy időzített folyamatokat létrehozni.
Itt egy picit tényleg megakadtam. Aztán utánanéztem, mire ad lehetőséget a belépés, például vissza tudok-e nyerni adatot? És igen, ha egy egyszerű belépés-kilépés parancs mellé befűzöm a hőmérséklet kiolvasását, akkor azt a kliens kimenetén látom.
Következő lépésnek jött egy újabb script, ami fix időközönként elvégzi ezt a távoli kiolvasást, majd pedig helyben végzi a naplózást. Erre pont jó a miniPC, egy nagyon lekorlátozott hozzáféréssel hibátlanul meg tudja ezt tenni. Ha pedig van napló fájlom, abban már tudok garázdálkodni is: van időpont és hőmérséklet. Valamint a figyelmeztető működés is megoldható.
Akkor viszont az jutott eszembe, hogy ha már van adat, akkor látszódjon az valami szebb formában is. Naponta belépni a mini-re nem kényelmes dolog.
Úgyhogy a mini-n futó webszervert is újra használatba vettem. Nagyjából azóta csendben üldögélt, amióta a blog kiköltözött a netre és minden külső eléréstől elvágtam - biztos ami biztos. Anno amikor beüzemeltem, majd szétestek a logok a sok kínai és orosz robottól, amik próbálták folyton feltörni. Nem-nem, nekem elég, ha itthon látom mi a helyzet, ha pedig gáz van, jöhet az email.
Szóval van egy rakás adatunk, hogy lehet azt szebbé tenni? Hát valami grafikon formában már értelmezhetőbb, ha jó sok van belőle akkor is. Erre pont jó a Chart.js nevű apróság, amit bármilyen egyszerű oldalba be lehet dobni, csak adattal kell etetni.
A lényeg az, hogy a meglévő napló fájlra ráeresztettem egy egyszerű feldolgozót és beraktam pár egyszerű grafikonba. Ezeken már látható egy sima böngészőben, hogyan állunk, kell-e lyukat fúrnom a nappali szekrényen, vagy jégkockákat bedobálni.
A maradék megoldandó probléma már csak adminisztrációsnak mondható. Amíg egy filléres chip esetén egy google keresés után az öledbe hullik a teljes specifikációja, egy drágább darab esetén még külön levélváltás után sem tudod kiszedni a gyártóból ugyanezt.
Tényleg nem, megpróbáltam. Felvettem a kapcsolatot a router chip készítővel és elmagyaráztam neki, hogy semmi ipari titok nem érdekel, csak az hőmérsékleti határértékeket árulja már el nekem. Mert az a helyzet, hogy a router leírásban szereplő üzemelési tartományát a proci hőmérséklete terhelés nélkül hozza - 60 °C. De nem adom fel, hátha megtudom. Vagy elég adat gyűlik össze és közösségi infó lesz belőle, mert publikálom magam.
Azért iderakom, ha kíváncsi vagy rá, mi is lett a végeredmény, a képre kattintva nagyban látszik majd. Eddig nem rossz, de simán lehet, hogy átvariálom majd az egészet :)