Polecenie "schedule"
Jest to polecenie do zarządzania zadaniami z wewnętrznego harmonogramu. Pozwala wyświetlać, dodawać, usuwać czy wstrzymywać zadania. Obsługuje także szablony zadań, dzięki czemu nie trzeba za każdym razem pamiętać składni komend dla popularnych zadań, czy też ich zalecanego terminarza.
Składnia
sowizor schedule sowizor schedule add [<szablon>] sowizor schedule edit|remove|disable|enable
Wyświetalnie terminarza
Polecenie wywołane bez parametrów wyświetla wszystkie skonfigurowane zadania w kolejności ich najbliższego terminu uruchomienia. Zadania będące czasowo wstrzymane są wyświetlane na końcu listy, z opisem (disabled).
run at every next command =================================================== [1] at 14:21:00 minute 2014-05-28 09:39:00 /usr/local/bin/test.sh [2] now minute 2014-05-28 09:39:21 $(which smailer) --daemon -V debug send @ [3] at 15:07:00 hour 2014-05-28 10:07:00 /usr/local/bin/dluga.sh [4] at 11:08:00 day 2014-05-28 11:08:00 $(which ssaker) -V debug --daemon --respawn --pkg-size=350 process 1000 update [5] now minute (disabled) $(respawn)
Poszczególne kolumny definiują parametry poszczególnych zadań.
Kolumna | Opis | Wartości |
---|---|---|
run | Sposób uruchomienia zadania | at - cyklicznie, począwszy od wskazanego czasunow - natychmiast po dodaniu do terminarza lub uruchomieniu usługionce - uruchomienie jednorazowe o podanym czasie i usunięcie zadania respawn - (obecnie nie obsługiwane) |
at | Czas uruchomienia zadania | Format HH:MM:SS - nie podaje się czasu dla zadań uruchamianych now . |
every | Częstotliwość uruchamiania zadania | second - co sekundę event - zadanie uruchamiane w momencie pojawienia się określonego zdarzenia |
next | Data i czas planowego uruchomienia zadania | Dla zadań czasowo wyłączonych będzie tam wartość (disabled), zaś dla zadań uruchamianych zdarzeniami wartość będzie pusta. |
command | Komenda wykonująca zadanie | Jest to albo pełna ścieżka do programu lub skryptu, który ma zostać uruchomiony albo makro - wraz z parametrami. $(which <nazwa>) - jest zastępowane pełną ścieżką do programu <nazwa> - o ile znajduje się on na ścieżce systemowej. $(respawn) - wykonuje bez uruchamiania nowego procesu polecenie " |
Dodawanie zadań
Polecenie z parametrem add
(i opcjonalnym parametrem z nazwą szablonu) pozwala na utworzenie nowego zadania i określenie harmonogramu jego wykonywania.
Program po kolei odpyta o nowe wartości dla opisanych wyżej: RUN, AT, EVERY i COMMAND. W przypadku podania nazwy szablonu - sugerowane wartości dla poszczególnych opcji zostaną wyświetlone i będzie można je zmodyfikować.
Szablon | Opis | run | at | every |
---|---|---|---|---|
smailer | Monitoring katalogu kolejki maili - wysyłka maili zaraz po pojawieniu się nowego pliku. | now | event | |
Wysyłka zaległej lub odroczonej poczty elektronicznej oraz wiadomości SMS | now | hour | ||
ssaker | Przekazywanie zmian w opisach bibliograficznych do portalu w.bibliotece.pl | at | wylosowany czas z zakresu 22:00:00 - 04:00:00 | day |
respawn | $(respawn) | now | minute | |
notify <index_name> | Nasłuch na zdarzenia NOTIFY z serwera PostgreSQL - indeksacja nowych i zmienionych dokumentów books. | now | event | |
Pełna reindeksacja dokumentów z grupy traffic. | at | wylosowany czas z zakresu 22:00:00 - 04:00:00 | day |
Edycja, usuwanie, wyłączanie i włączanie zadań
Polecenie z parametrami edit
, remove
, disable
i enable
odpowiadają odpowiednim operacjom na liście zdefiniowanych zadań. W pierwszym kroku program wyświetli listę zadań, które są dostępne dla tych operacji i poprosi o podanie numeru zadania.
W przypadku operacji edycji zadania (edit
), program po kolei odpyta o nowe wartości dla opcji RUN, AT, EVERY i COMMAND. Wartością domyślną będą aktualne wartości opcji.
Pozostałe operacje służą odpowiednio do usunięcia zadania (remove
), czasowego wyłączenia zadania bez jego usuwania (disable
) oraz ponownego włączenia wcześniej wyłączonego zadania (enable
).