Сон по расписанию
В студёную летнюю пору, в первый же день моего приёма на работу в гостиницу, нагрянул к нам аж целый президент со своим штабом и ФСО. Подняли кучу шума, пыли и переполоха. Точнее, самого президента нам не досталось — и слава стихиям. ФСО тут же стали тянуть себе интернет (нашего им не хватало) и мучать межгород — а как раз за пару дней до того на коробочке DSA-3110 PPPoE, по которому нам падал биллинг, помер. Подняли PPPoE через винду — невелика проблема, но дальше уткнулись в тупик. Если раньше порт пробрасывался напрямую на FTP-сервер, то теперь всё падало на совершенно левый комп. Подняли на нем FTP — файл с биллингом стал ловиться. Скормили его программе через SMB — всё окей. Но не сидеть же и не кидать каждые несколько секунд файлики?
Первым (и, конечно, неправильным) решением было смонтировать нужную папку по Самбе и назначить её домашней для FTP. Да не
program ppc
while true do begin if FileExists() then MoveFile(); sleep(100); end;
end.
Конечно, потом этот код оброс try … except, репортом таймштампов и размера перемещённых по сети файлов — на всякий случай. А сейчас у него аптайм второй раз перевалил за полсотни дней, и менять код на скрипт, согласно первому правилу админа («работает — не трожь!»), я пока не собираюсь. Пусть в местном зоопарке будет на одну монструозию больше.