Internet w gospodarce

Dysk twardyWyjątkowo dziwny projekt, w którym próbowaliśmy połączyć meandry gospodarki z monitorowaniem stanu dysku twardego. Wbrew pozorom te dwie sprawy miały jakiś wspólny mianownik, wraz z Piotrem Twarogiem otrzymałem bowiem przydział projektowy o skromnej nazwie "Monitorowanie dysków twardych z wykorzystaniem technologii S.M.A.R.T. Oprogramowanie sensora monitorującego stan dysku twardego, który powiadamia administratora o niebezpieczeństwie utraty danych.". Być może nie byłoby w tym wszystkim nic trudnego, gdyby nie fakt, że całość mieliśmy wykonać... w Javie.

Z racji, że S.M.A.R.T. jest funkcjonalnością stricte sprzętową, wszelkie biblioteki do jego obsługi dostępne są w wersji C/C++. Aby wykorzystać je w języku Java, musieliśmy sięgnąć do mechanizmów Java Native Interface. Pod tą złowrogą nazwą kryje się interfejs współpracy Javy z kodem kompilowanym. Nie muszę chyba mówić, jak zamotana jest taka kooperacja i jak bardzo można polegać na jej stabilności.

Sprawozdanie

iwg.pdf

Celem projektu jest stworzenie oprogramowania, które ułatwiłoby administratorowi systemu Linux kontrolę nad sprawnością sprzętu poprzez monitoring stanu dysków twardych oraz powiadamianie na bieżąco o ewentualnych ich awariach. Wykorzystany został program D-Sensor służący do nadzorowania stanu systemu (pamięci, CPU, procesów), używający mechanizmów Java Native Interface do komunikacji z linuksowymi bibliotekami. Główne funkcje D-Sensora to prezentacja wyników pomiarów oraz alarmowanie w przypadku przekroczenia przez dany parametr dozwolonej wartości. W krytycznych chwilach generowane są raporty w formacie XML zawierające wartości będące przyczyną alarmu.