Cron Jobs | ||
|
Cron to usługa działająca na serwerze, pozwalająca na okresowe uruchamianie dowolnych skryptów/programów w określonym czasie. Moduł ten umożliwia stosunkowo proste zarządzanie listą zadań (crontable). Do wyboru są dwie wersje: Standard i Advanced (Unix Style). Wersja Standard Dosyć łatwy w obsłudze interfejs nie powinien sprawić problemu nawet początkującym użytkownikom.W polu u samej góry należy wpisać adres email, na który będą wysyłane raporty z wykonanych zadań cron'a. Raport taki zawiera datę i godzinę uruchomienia oraz dane, które zwrócił uruchomiony program/skrypt (czyli to, co przy normalnym uruchomieniu znalazłoby się na ekranie/stronie www). Aby stworzyć nowe zadanie należy wypełnić pola formularza: Command to run - komenda, która będzie uruchamiana o zadanym czasie i z zadaną częstotliwością; należy pamiętać, że mowa tu o komendach systemowych, tak więc np. aby uruchomić skrypt PHP należy wpisać: 'php /public_html/katalog/nazwa_skryptu.php' (bez cudzysłowów), Minute(s) - minuty, w których będzie uruchamiane zadanie; do wyboru są: Every Minute (o każdej minucie - co minutę), Every Other Minute (o każdej minucie niezaznaczonej na liście), Every Five Minutes (co pięć minut), Every Ten Minutes (co dziesięć minut), Every Fifteen Minutes (co piętnaście minut); poniżej jest lista minut w godzinie, z której można wybrać kilka (przytrzymując klawisz CTRL); należy pamiętać, aby warunki się wzajemnie nie wykluczały. Przykład: zaznaczamy Every Other Minute oraz minuty 0, 15, 30 i 45. Zadanie będzie wykonywane o każdej pełnej minucie poza wybranymi minutami. Przykład: zaznaczamy Every Ten Minutes oraz minuty 15 i 45. Zadanie będzie wykonane w minutach 0, 10, 15, 20, 30, 45 i 50. Hour(s) - godziny, w których będzie uruchamiane zadanie; do wyboru są: Every Hour (o każdej godzinie - co godzinę), Every Other Hour (o każdej godzinie niezaznaczonej na liście), Every Four Hours (co cztery godziny), Every Six Hours (co sześć godzin); poniżej jest lista godzin w dobie, zapisana w dwóch formatach (12 i 24-godzinnym); tutaj również można wybrać kilka pozycji z listy. Przykład: zaznaczamy Every Other Hours oraz godziny 0, 3, 6, 9, 12, 15, 18, 21. Zadanie będzie wykonane o każdej pełnej godzinie poza wybranymi godzinami. Przykład: zaznaczamy Every Four Hours oraz godziny 1 i 13. Zadanie będzie wykonane o godzinie 0, 1, 4, 8, 12, 13, 16 i 20. Month(s) - miesiące, w których będzie uruchamiane zadanie; do wyboru są: Every Month (w każdym miesiącu - co miesiąc) oraz wszystkie miesiące; można wybrać kilka pozycji z listy. Day(s) - dni, w których będzie uruchamiane zadanie; do wyboru są: Ever Day (w każdy dzień - codziennie) oraz wszystkie dni miesiąca; można wybrać kilka pozycji z listy. Weekday(s) - dni tygodnia, w których będzie uruchamiane zadanie; do wyboru są: Every Weekday (w każdy dzień tygodnia) oraz wszystkie dni tygodnia od niedzieli (Sunday) do soboty (Saturday); można wybrać kilka pozycji z listy. Należy pamiętać, że wszystkie te warunki są sprawdzane jednocześnie. Przykład: Minute(s) - wybieramy 0 Hour(s) - wybieramy Every Six Hours Month(s) - wybieramy Every Month Day(s) - wybieramy 1 i 15 Zadanie zostanie wykonane o każdej pełnej godzinie (minuta 0) co sześć godzin, ale jedynie w dni 1 i 15 każdego miesiąca. Przykład: Minute(s) - wybieramy Every Fifteen Minutes Hour(s) - wybieramy 10 i 18 Month(s) - wybieramy January i February Day(s) - wybieramy Every Day Weekday(s) - wybieramy Sunday i Saturday Zadanie zostanie wykonane co piętnaście minut, ale jedynie wtedy, jeśli godzina to 10 lub 18 (czyli o 10:00, 10:15, 10:30, 10:45 oraz o 18:00, 18:15, 18:30 i 18:45), w każdą sobotę i niedzielę, ale tylko w miesiącach styczniu i lutym. Jak widać definiowanie zadań cron'a przy użyciu tego modułu nie jest skomplikowane, a jednocześnie daje spore możliwości. Wersja Advanced (Unix Style) Ta wersja daje mniejsze możliwości konfiguracji, a poza tym działa na zasadzie podobnej do 'ręcznej' edycji tablicy crontab.Formularz zawiera pola Minute, Hour, Day, Month i Weekday, w których podaje się w postaci numerycznej wartości. | ||