Kilka miesięcy temu dostałem służbowo do rozwiązania całkiem średnio interesujący problem. Otóż jeden z działów zażyczył sobie zautomatyzowania pewnego procesu, który dotychczas był dziergany ręcznie. Proces ów, w dużym uproszczeniu, wygląda tak:
- O zadanej godzinie poczekać (nie dłużej jednak niż godzinę) na pojawienie się nowego pliku tekstowego (o znanej z góry nazwie / masce) w jednym z folderów.
- Załadować ów plik do tabeli w bazie danych.
- Wygenerować na podstawie tej tabeli inny plik tekstowy.
- Wysłać ten plik na taki to a taki serwer SFTP, mając dane ip serwera, login i hasło.
- Na koniec:
- W momencie wystąpienia problemu z jakimkolwiek z ww kroków, wysłać na podany adres e-mail wiadomość z załączonymi szczegółowymi logami
- Jeżeli problem nie wystąpił, wysłać wiadomość informacyjną na inny adres e-mail.
Proces działał bez zarzutu przez dłuższy czas. Pliki przychodziły (lub nie), dane się ładowały (lub nie) i wysyłały gdzie trzeba (lub nie), a - co najważniejsze - odpowiedni ludzie dostawali co rano email z informacją, że wszystko działa (lub nie).
Tymczasem kilka dni temu dostałem - całkiem znienacka - najeżonego pretensjami maila, że co ja sobie w ogóle wyobrażam, bo oni nie dostali żadnej wiadomości od systemu. I żebym na ten tychmiast rzucił wszystko, co właśnie robię i pomógł rozwiązać problem, bo jak nie to Wogle.
Ponieważ nie lubię być straszony Woglami (chociaż czasem lubię je fotografować: !klik!), na wszelki wypadek rzuciłem wszystko, co właśnie robiłem i zabrałem się za rozwiązywanie problemu.
"Problem" okazał się dość banalny. Otóż program odpowiadający za uruchamianie całego powyższego bajzlu najnormalniej w świecie się był zesrał, i to z powodów całkowicie zewnętrznych względem opisywanych tu procesów.
Krótko mówiąc przydałby się jakiś dodatkowy programowy "strażnik" pilnujący tamtego, żeby się nie zesrywał.
A jeżeli ten "strażnik" też się sfajda, dobrze byłoby mieć coś, co go przypilnuje i w razie czego zrestartuje.
A jeżeli ten pilnowacz też pójdzie w maliny...
I tak dalej, panie.
Niech się pilnują wzajemnie.