Lekcja 24 · krok 34 pytania

Sprawdź się: Harmonogramy i cron: zadania cykliczne bez zalewu wiadomości

4 pytania do lekcji Harmonogramy i cron: zadania cykliczne bez zalewu wiadomości. Są scenariuszowe, nie definicyjne — sprawdzają, czy rozpoznasz sytuację, a nie czy pamiętasz nazwę. Po każdej odpowiedzi zobaczysz wyjaśnienie, także wtedy, gdy trafisz.

Pytania quizu

  1. Zakładasz zadanie wyrażeniem cron „0 9 * * 1” bez flagi --tz. O której faktycznie się odpali?

    • O 9:00 czasu UTC
    • O 9:00 w strefie czasowej hosta, na którym działa Gateway
    • O 9:00 w strefie ustawionej w profilu użytkownika
    • O 9:00 w strefie kanału, na który idzie wynik

    Wyrażenia cron bez --tz korzystają ze strefy hosta Gateway. Odpowiedź o UTC jest kusząca, bo to prawda — ale dla znaczników czasu podanych bez strefy przy fladze --at. Te dwie reguły łatwo pomylić i to najczęstsze źródło raportu przychodzącego o złej godzinie.

  2. Chcesz zadanie odpalane codziennie o 7:00 czasu polskiego, niezależnie od strefy serwera. Który zapis zadziała?

    • --every 24h --tz Europe/Warsaw
    • --cron "0 7 * * *" --tz Europe/Warsaw
    • --every 1d z ustawioną zmienną środowiskową strefy
    • --at "07:00" --every 1d

    Flaga --tz jest poprawna wyłącznie z --at oraz --cron, więc jedynym działającym zapisem jest wyrażenie cron ze strefą. Pierwsza odpowiedź wygląda naturalnie i dlatego wpada w nią wiele osób — stały odstęp liczy po prostu dobę od poprzedniego przebiegu i przy zmianie czasu rozjedzie się z zegarem.

  3. Zadanie ma codziennie o 7:00 przygotować raport i zostawić ślad, który później da się skontrolować. Co wybierasz?

    • Heartbeat z activeHours ustawionym na okno wokół 7:00
    • Zadanie cron z --cron i --session isolated
    • Standing order wstrzykiwany do każdej sesji
    • Skill z komendą ukośnikową odpalany ręcznie

    Cron daje dokładny termin i przy każdym wykonaniu zakłada rekord w rejestrze zadań w tle, widoczny przez openclaw tasks list. Heartbeat też jest cykliczny i dlatego wygląda na zamiennik, tylko nie tworzy rekordów zadań i nie trafia w konkretną godzinę — chodzi w stałym rytmie od ostatniego przebiegu.

  4. Zadanie z --every 5m ma ustawione --announce. Ile wiadomości dostaniesz przez dobę, zakładając, że każdy przebieg się powiedzie?

    • 48
    • 144
    • 288
    • 1440

    Doba ma 288 pięciominutowych okien, a --announce dostarcza wynik po każdym przebiegu. Odpowiedź 1440 to liczba minut w dobie, czyli wynik dzielenia, którego nikt nie wykonał, a 48 to liczba przebiegów heartbeatu przy domyślnym odstępie 30 minut — łatwo pomylić jedno z drugim.

Zakładasz zadanie wyrażeniem cron „0 9 * * 1” bez flagi --tz. O której faktycznie się odpali?

Wiedza bez wdrożenia się nie zwraca

Uruchom agenta i zastosuj to, czego się właśnie nauczyłeś. Chmura EU, polska faktura VAT, 5 dni za darmo na pakiecie Premium.

Zobacz plany