Version 2 (modified by jpolczynski, 10 years ago) |
---|
Przewodnik użytkownika > Demon eDokumenty - CronRunner - czasowe wywoływanie zadań etc.
Automatyczna synchronizacja przy wykorzystaniu zaplanowanych zadań
System eDokumenty pozwala uruchomić zadania synchronizacji automatycznie. Wykorzystuje do tego celu systemowy Harmongram Zadań (w linuksie cron). Mechanizm ten uruchamia skrypt CronRunner.php w trybie klienta. Skrypt ten odpowiedzialny jest za realizację zadań zapisanych w bazie danych systemu eDokumenty (konkretnie w tabeli crontab).
Konfiguracja środowiska
Zanim zostanie utworzone pierwsze zadanie - system trzeba przygotować do uruchamiania skryptu CronRunner.php. W tym celu w systemie linux należy dodać odpowiedni wpis do pliku /etc/crontab
*/1 * * * * www-data cd /home/edokumenty/public_html/apps/edokumenty && php -f CronRunner.php >> /var/log/cronrunner.log
Natomiast w systemie Windows można utworzyć zadanie w systemowym panelu Harmonogram Zadań lub też wykonać z lini poleceń (cmd) komendę:
schtasks /create /sc co_minutę /mo 5 /tn "CronRunner" /tr "php -f C:\Program Files\BetaSoft\eDokumenty\CronRunner.php"
W tym momencie należy przetestować działanie skryptu. Na systemie Windows należy uruchomić zadanie i sprawdzić w historii pobierania, czy wykonała się synchronizacja. Tutaj oprzemy się o testowaniu na systemie Linux. W tym celu należy przejść na konto użytkownika www-data:
su - www-data
Jeżeli uruchomi się powłoka sh należy wykonać polecenie:
bash
Będąc w powłoce bash należy wykonać polecenie:
cd /home/edokumenty/public_html/apps/edokumenty && php -f CronRunner.php >> /var/log/cronrunner.log
Po kliknięciu przycisku Enter w konsoli powinna się pojawić standardowa linia ze znakiem zachęty. Jeżeli pokaże sie jakikolwiek komunikat, to znaczy, że coś nie działa
Poniższe zrzuty ekranu pokazują typowe problemy napotkane przy uruchamianiu CronRunner-a.:
Brak uprawnień do pliku CronRunner.log
Rys. 6.
W celu rozwiązania tego problemu należy w odpowiedniej lokalizacji np. w katalogu /var/log/ z poziomu użytkownika root utworzyć plik (pusty) i nadać mu odpowiednie uprawnienia:
cd /var/log vim CronRunner.log -> następnie w Vimie zapisać pusty plik poleceniem :wq chmod 664 CronRunner.log chown www-data:edokumenty CronRunner.log
Testując powinniśmy uzyskać następujący efekt:
Taki widok w konsoli oznacza, że skrypt wykonał się. Na wszelki wypadek nalezy spojrzeć do pliku log-a:
tail /var/log/CronRunner.log
W przypadku wystąpienia następującego komunikatu:
Oznacza to, że w pliku /etc/php5/cli/php.ini jest zła konfiguracja. Sposób postępowania jest podobny także w przypadkach np. braków rozszerzeń do obsługi innych systemów. W celu naprawy sytuacji należy utworzyć link symboliczny do php.ini apache'a, który wiemy, ze jest prawidłowy.
cd /etc/php5/cli/ mv php.ini php.ini.bak ln -s /etc/php5/apache2/php.ini php.ini
Wynikiem tej operacji powinien być log, w którym nie pojawił się żadeń nowy wpis z błędem.
Rys. 11.
Konfiguracja zadań w systemie eDokumenty
Konfigurację automatycznego pobierania przeprowadzamy w oknie mechanizmu BSConnect. Należy przejść na koncie administratora systemu eDokumenty Narzędzia > Połączenia z systemami zewnętrznymi. W otwartym oknie połączęń wybieramy połączenie i klikamy ikonę zaplanowane zadania
Rys. 12. Ikona Zaplanowane Zadania
W otwartym oknie widać wszystkie dotychczas skonfigurowane akcje z podziałem na typy obiektów synchronizacji.
W oknie tym należy wybrać akcję i kliknąć przycisk nowy. Pojwai się okno, w którym wpisujemy własną nazwę zdarzenia oraz ustawiamy czas, kiedy ma się wykonywać operacja.
Rys. 14. Konfiguracja zaplanowanego zadania dla wybranej akcji
Po skonfigurowaniu i zapisaniu w oknie Zaplanowanych zadań przy akcji pojawi się ikona zaplanowanego zadania.
Załączniki
- rys_001.png (674 bytes) - dodany przez jpolczynski 10 years temu.
- rys_002.png (1.1 KB) - dodany przez jpolczynski 10 years temu.
- rys_003.png (3.6 KB) - dodany przez jpolczynski 10 years temu.
- rys_004.png (49.4 KB) - dodany przez jpolczynski 10 years temu.
- rys_005.png (3.7 KB) - dodany przez jpolczynski 10 years temu.
- rys_006.png (25.7 KB) - dodany przez jpolczynski 10 years temu.
- rys_007.png (7.4 KB) - dodany przez jpolczynski 10 years temu.
- rys_008.png (26.6 KB) - dodany przez jpolczynski 10 years temu.
-
CronRunner.xml
(3.9 KB) - dodany przez jachtelik
9 years temu.
Plik do zaimportowania w Task Sheduler na serwerze Windows.