Cronjobs: Unterschied zwischen den Versionen

Zeile 34: Zeile 34:
 
==Cronjobs bearbeiten==
 
==Cronjobs bearbeiten==
  
[[File:Cronjob bearbeiten.png]]
+
[[File:Cronjob bearbeiten2.png]]
  
#Hier wird Ihnen angezeigt, wann der Cronjob das letzte Mal ausgeführt wurde.
 
#Hier können Sie den Status des letzten Laufs einsehen. Mit einem Klick auf den Status erhalten Sie die Ausgabe des Skriptes.
 
 
#Schalten Sie hier den Cronjob aktiv oder deaktivieren Sie ihn.
 
#Schalten Sie hier den Cronjob aktiv oder deaktivieren Sie ihn.
 
#Tragen Sie in dieser Zeile die Startzeit ein, zu welcher der Cronjob gestartet werden soll. Stellen Sie mit dem ersten Pulldown-Menü den Tag und mit den beiden anderen Pulldown-Menüs die Uhrzeit ein. Mit dem mittleren Menü bestimmen Sie die volle Stunde und mit dem rechten die Minuten. Ein Cronjob kann höchstens einmal pro Stunde ausgeführt werden.
 
#Tragen Sie in dieser Zeile die Startzeit ein, zu welcher der Cronjob gestartet werden soll. Stellen Sie mit dem ersten Pulldown-Menü den Tag und mit den beiden anderen Pulldown-Menüs die Uhrzeit ein. Mit dem mittleren Menü bestimmen Sie die volle Stunde und mit dem rechten die Minuten. Ein Cronjob kann höchstens einmal pro Stunde ausgeführt werden.
Zeile 48: Zeile 46:
 
#Mit "Löschen" löschen Sie den Cronjob.
 
#Mit "Löschen" löschen Sie den Cronjob.
 
#Mit "Übernehmen" speichern Sie die Änderungen an Ihrem Cronjob.
 
#Mit "Übernehmen" speichern Sie die Änderungen an Ihrem Cronjob.
 +
#Hier wird Ihnen angezeigt, wann der Cronjob das letzte Mal ausgeführt wurde.
 +
#Hier können Sie den Status des letzten Laufs einsehen. Mit einem Klick auf den Status erhalten Sie die Ausgabe des Skriptes.
  
 
==Cronjobs auf der Kommandozeile==
 
==Cronjobs auf der Kommandozeile==

Version vom 13. September 2019, 11:10 Uhr


Cronjobs allgemein

Über das DCP haben Sie die Möglichkeit, eigene Cronjobs anzulegen. Cronjobs sind Skripte, die vom Server automatisch zeitgesteuert aufgerufen werden. So können Sie z.B. zeitgesteuert bestimmte Aktionen auf Datenbanken ausführen, Dateien löschen oder anlegen oder auch Backups von Datenbanken erstellen. Für die hier angelegten Cronjobs besteht eine maximale Ausführungszeit von 10 Minuten. Skripte, die Länger als 10 Minuten laufen, werden automatisch durch den Webserver abgebrochen.

Cronjobs Übersicht

Cronjob übersiicht.png

  1. Hier werden Ihnen die Namen der angelegten Cronjobs angezeigt.
  2. Hier sehen Sie, ob der Cronjob zur Zeit aktiv ist.
  3. Hier können Sie den Status des letzten Laufs des Cronjobs ersehen.
  4. Hier wird Ihnen angezeigt, wann der Cronjob zuletzt gelaufen ist.
  5. Hier wird Ihnen angezeigt, wann der Cronjob das nächste Mal automatisch ausgeführt wird.
  6. Wenn Sie mit der Maus über die Liste gehen, verfärbt sich die Zeile des jeweiligen Eintrages, über dem Sie sich mit dem Mauszeiger befinden, blau. Sie können auf einen Eintrag klicken, um in den "Bearbeiten"-Modus zu gelangen, um nachträglich Einstellungen an dem Cronjob zu ändern oder diesen zu löschen.
  7. Mit dem Button "+ Neu anlegen" können Sie einen neuen Cronjob anlegen.

Cronjobs anlegen

Cronjob anlegen.png

  1. Schalten Sie hier den Cronjob aktiv oder deaktivieren Sie ihn.
  2. Tragen Sie in dieser Zeile die Startzeit ein, zu welcher der Cronjob gestartet werden soll. Stellen Sie mit dem ersten Pulldown-Menü den Tag und mit den beiden anderen Pulldown-Menüs die Uhrzeit ein. Mit dem mittleren Menü bestimmen Sie die volle Stunde und mit dem rechten die Minuten. Ein Cronjob kann höchstens einmal pro Stunde ausgeführt werden.
  3. Geben Sie hier den Namen für den Cronjob an. Sie können den Namen frei bestimmen. Er wird Ihnen auch in der Übersicht in der ersten Spalte Ihrer eingerichteten Cronjobs angezeigt.
  4. Geben Sie hier die URL zu dem Cronscript ohne Parameter ein.
  5. Falls die aufzurufende URL hinter einem Verzeichnisschutz liegt, können Sie hier Usernamen und Passwort eingeben. Die Authentifizierung funktioniert ausschließlich mit htaccess-geschützten Skripten und nicht bei z.B. PHP-Sessions, bei denen Username und Passwort abgefragt werden.
  6. Schalten Sie hier den E-Mail-Versand aktiv oder deaktivieren Sie ihn.
  7. Hinterlegen Sie hier eine E-Mail Adresse, wenn Sie wollen, dass Ihnen das Ergebnis des Cronjob-Laufs per E-Mail zugesandt wird. In der E-Mail sind auch alle Ausgaben Ihres Skriptes enthalten.
  8. Die Parameter Ihres Skriptes können Sie hier eintragen. Sie können bis zu 10 Parameter übergeben.Nehmen wir einmal an, Sie möchten die URL
    http://www.dcp-support.de/cronscript.php?section=datenbanken&action=erase_all
    ausführen lassen, so ist die URL, die Sie in Feld Nummer 4 eintragen
    http://www.dcp-support.de/cronscript.php
    Die weitere URL
    section=datebanken&action=erase_all
    besteht nur mehr aus Parametern und Ihren Werten, die an das Skript übergeben werden. In unserem Fall soll das Skript 'cronscript.php' an der Datenbank die Aktion erase_all ausführen. Die Parameter Ihrer URL werden sich natürlich von dieser URL unterscheiden. Mit dem Ausdruck section=datenbanken wird in unserem Beispiel also die Datenbank bestimmt. section ist hierbei der Parameter, datenbanken ist der Wert.Wir tragen also unter Punkt 8 in der ersten Zeile für den ersten Parameter bei "Name # 1" den Parameternamen section und in das nebenstehende Feld den Wert des Parameters datenbanken ein. Genauso verfahren wir mit den restlichen Parametern, die mit der URL übergeben werden.
  9. Mit einem Klick auf "Übernehmen" speichern Sie den Cronjob.

Cronjobs bearbeiten

Cronjob bearbeiten2.png

  1. Schalten Sie hier den Cronjob aktiv oder deaktivieren Sie ihn.
  2. Tragen Sie in dieser Zeile die Startzeit ein, zu welcher der Cronjob gestartet werden soll. Stellen Sie mit dem ersten Pulldown-Menü den Tag und mit den beiden anderen Pulldown-Menüs die Uhrzeit ein. Mit dem mittleren Menü bestimmen Sie die volle Stunde und mit dem rechten die Minuten. Ein Cronjob kann höchstens einmal pro Stunde ausgeführt werden.
  3. Geben Sie hier den Namen für den Cronjob an. Sie können den Namen frei bestimmen. Er wird Ihnen auch in der Übersicht in der ersten Spalte Ihrer eingerichteten Cronjobs angezeigt.
  4. Geben Sie hier die URL zu dem Cronscript ohne Parameter ein.
  5. Falls die aufzurufende URL hinter einem Verzeichnisschutz liegt, können Sie hier Usernamen und Passwort eingeben. Die Authentifizierung funktioniert ausschließlich mit htaccess-geschützten Skripten und nicht bei z.B. PHP-Sessions, bei denen Username und Passwort abgefragt werden.
  6. Schalten Sie hier den E-Mail-Versand aktiv oder deaktivieren Sie ihn.
  7. Hinterlegen Sie hier eine E-Mail Adresse, wenn Sie wollen, dass Ihnen das Ergebnis des Cronjob-Laufs per E-Mail zugesandt wird. In der E-Mail sind auch alle Ausgaben Ihres Skriptes enthalten.
  8. Die Parameter Ihres Skriptes können Sie hier eintragen. Sie können bis zu 10 Parameter übergeben. Nehmen wir einmal an, Sie möchten die URL >pre>http://www.dcp-support.de/cronscript.php?section=datenbanken&action=erase_all ausführen lassen, so ist die URL, die Sie in Feld Nummer 5 eintragen
    http://www.dcp-support.de/cronscript.php
    Die weitere URL
    section=datebanken&action=erase_all
    besteht nur mehr aus Parametern und Ihren Werten, die an das Skript übergeben werden. In unserem Fall soll das Skript cronscript.php an der Datenbank die Aktion erase_all ausführen. Die Parameter Ihrer URL werden sich natürlich von dieser URL unterscheiden. Mit dem Ausdruck section=datenbanken wird in unserem Beispiel also die Datenbank bestimmt. section ist hierbei der Parameter, datenbanken ist der Wert. Wir tragen also unter Punkt 10 in der ersten Zeile für den ersten Parameter bei Name # 1 den Parameternamen section und in das nebenstehende Feld den Wert des Parameters datenbanken ein. Genauso verfahren wir mit den restlichen Parametern, die mit der URL übergeben werden.
  9. Mit "Löschen" löschen Sie den Cronjob.
  10. Mit "Übernehmen" speichern Sie die Änderungen an Ihrem Cronjob.
  11. Hier wird Ihnen angezeigt, wann der Cronjob das letzte Mal ausgeführt wurde.
  12. Hier können Sie den Status des letzten Laufs einsehen. Mit einem Klick auf den Status erhalten Sie die Ausgabe des Skriptes.

Cronjobs auf der Kommandozeile

Auf eigenen Servern (z.B. Professional Web Cloudserver oder Professional Web Bladeserver) ist es auch möglich, über den SSH-Zugang Cronjobs direkt in die Usercrontab auf der Kommandozeile einzutragen. Hierzu verbindet man sich per SSH mit dem Server und tippt dann in der Konsole:

crontab -e

In dem Editor kann man dann seine Crontabs eintragen. Der Vorteil hier ist, dass es keine Webscripte sein müssen, sondern die Scripte direkt auf dem Server ausgeführt werden, so dass diese nicht den Weblimits unterliegen.
Mit dem Befehl

crontab -l

kann man sich die bestehenden Einträge auflisten lassen.