Änderungen

Cronjobs

2.023 Byte hinzugefügt, 20:53, 26. Mär. 2020
Dieser Cronjob ruft eine Liste von bekannten Proxy-IP-Adressen ab und speichert diese zwischen. Das ermöglicht es sourceDESK, Proxy-Nutzern bestimmte Funktionen der Webseite zu sperren, um Betrug vorzubeugen.
 
'''Server-Monitoring'''
 
Dieser Cronjob überwacht die Server im [[Monitoring]].
'''System-Status'''
Dieser Cronjob aktualisiert die Kurse der [[Währungen]] automatisch, wenn dies aktiviert ist und die Währungs-Codes gültig sind.
== Cronjob-Einrichtung der Cronjobs : URL ==Die einfachste Variante der Cronjob-Ausführung ist der Aufruf über die Cronjob-URL. Diese finden Sie sollten alle angezeigten unter "Einstellungen > System-Einstellungen > Cronjobs in angegebenen ", dort erhalten Sie auch das entsprechende Ausführungs-Intervall einrichten. Die URL ist unter dem Webseite-Icon auffindbar, zum Beispiel diese muss als Cronjob eingerichtet werden. == Cronjob-Einrichtung: PHP-CLI ==Eine weitere Variante zur Ausführung der Cronjobs ist der Aufruf über die PHP-Kommandozeile. Dies ist die bevorzugte Variante. Unter "Einstellungen > System-Einstellungen > Cronjobs" finden Sie die verfügbaren Cronjobs samt Ausführungs-Intervalle. Am Ende einer jeden Zeile der Tabelle finden Sie die Cronjob-URL. In dieser befindet sich der Parameter "job", dieser enthält den Cronjob-Key (etwa ''crontabrecurring'' oder über Ihr Verwaltungsinterface ). Den Email-Cronjob würden Sie wie folgt einrichten (Linuxcrontab-TippStil):  <source lang="bash">* * * * * /path/to/php /path/to/sourcedesk/index.php cron queue</source> == Cronjob-Einrichtung: Daemon ==Seit Version 1.1.1 reicht es aus, einen Daemon einzurichten, der die Cronjobs automatisch ausführt, wenn diese fällig sind. Alternativ können die Cronjobs auch weiterhin einzeln aufgerufen werden. Der Daemon erfordert das PHP-Modul ''wget pthreads''. Der Aufruf erfolgt in einer Shell mit: <source lang="bash">nohup php /var/www/sourceDESK/index.php cron _all &</source> Hierbei ist der Pfad zu sourceDESK anzupassen, eventuell muss auch der Pfad für die PHP-Binary geändert werden. Eine Passwort-spider Authentifizierung ist nicht erforderlich. Der Daemon kann beispielsweise mit ''systemd'' verwaltet werden. Hierzu kann eine Datei ''/etc/systemd/system/sourcedesk.service'' mit folgendem Inhalt angelegt werden: <source lang="vim">[Unit]Description=sourceDESK CronjobRequires=mysqld.serviceAfter=mysqld.service [Service]User=rootType=simpleTimeoutSec=0PIDFile=/var/run/sourcedesk.pidExecStart=php -f /var/www/sourceDESK/index.php cron _all> /dev/null 2>/dev/nullKillMode=process Restart=on-failureRestartSec=30s [Install]WantedBy=default.target<URL/source>" Die Datei - und jegliche Änderungen - müssen mit '')systemctl daemon-reload'' im System bekannt gemacht werden. Über die Administration deaktivierte Cronjobs lassen sich nicht mehr aufrufen Der Dienst kann dann mit ''systemctl start sourcedesk'' gestartet werden. Um ihn beim Booten zu starten, sollten aber trotzdem als Cronjob im Crontab eingetragen sein, damit sie nach der erneuten Aktivierung wieder laufenmuss ''systemctl enable sourcedesk'' ausgeführt werden.
== Intervall ==
== Für Entwickler ==
Die Cronjobs finden sich in der Datenbanktabelle ''cronjobs'' (eventuell mit Präfix). Dort können Sie neue Cronjobs hinzufügen oder das Intervall verändern - tun Sie dies aber bitte nur, wenn Sie wissen was Sie tun. Jeder Cronjob hat dort unter anderem ein Merkmal ''key''. Das ist der GET-Parameter ''job'' beim Aufruf eines Cronjobs. Außerdem muss eine Datei ''key''.php im Verzeichnis ''controller/crons'' existieren. Die einfachere Variante dürfte aber sein, weitere Aktionen im Anschluss an einen bestehenden Cronjob durchzuführen, hierzu können Sie den [[Hook]] [[Hook:Cronjob]] verwenden.