Zeitgesteuert (Eingangsagenten)

Die zeitgesteuerten Eingangsagenten können zu einem vom Benutzer definierten Zeitpunkt aktiv Daten bei einer Datenquelle abholen. Die Zeitpunkte können klassisch in Cron-Syntax, aber auch in vereinfachter Form angegeben werden. Zudem können zeitgesteuerte Eingangsagenten per HTTP oder Message getriggert werden.

Hinweise


  • Der letzte Startzeitpunkt und der nächste geplante Startzeitpunkt eines Profils kann im Control Center eingesehen werden.

  • Verzeichnisnamen können in allen Datenquellen dynamisch mit einem Datum erstellt werden. So wird z. B. der Verzeichnisname C:/tmp/<yyyyMMdd> am 1.6.2008 durch C:/tmp/20080601 ersetzt.

  • Die System-Variable VAR_SYS_TRIGGER_CHANNEL_ID (bzw. MSG_CALL_VAR_SYS_TRIGGER_CHANNEL_ID) erlaubt es den Partner-Kanal im zeitgesteuerten Eingangsagenten (mit beliebiger Datenquelle) durch einen Kanal mit dieser ID (Wert der Variable) zu ersetzen (Details siehe dort).

Allgemeine Einstellungen


Nur auf IS starten: Diese Einstellungsmöglichkeit ist nur relevant für das Zusatzmodul Load Balancing, um das Profil auf einem bestimmten Node zu starten.

Interne Cronjobs mit Funktion anlegen


Siehe Funktion createScheduleEntry(a, b, [c]).

Cronjob zum Löschen alter Dateien


Es ist möglich einen Cronjob zu definieren, der alle 10 Minuten alte Dateien löscht (kein Profil nötig).

Aktivieren Sie dabei folgenden Abschnitt in der Konfigurationsdatei ./etc/cron.xml.


...
 
<!-- add a cron job which looks every 10minutes for out-dated files as defined in config file -->
<Call name="addJob">
<Arg>
<New class="com.ebd.hub.services.cron.CronJob">
<Arg>Remove files</Arg>
<Arg>
<New class="com.ebd.hub.services.cron.DeleteFilesCronJob">
<Set name="configFilename">./conf/samples/sample_delete_cron.properties</Set>
</New>
</Arg>
<Call name="setTimeSchedule">
<Arg>
<New class="com.ebd.hub.services.cron.Schedule">
<Arg type="long">60000</Arg>
</New>
</Arg>
</Call>
</New>
</Arg>
</Call>
 
...


Im Parameter configFilename ist der Pfad zu einer Properties-Datei anzugeben, die die spezifischen Einstellungen zum Löschen enthält.


./conf/samples/sample_delete_cron.properties
# sample config for cron job to delete files within named directory
 
# define the entry folder to look for
directory=/tmp
# do this for sub folders within named directory as well
recursive=true
# define file pattern for selecting files
file.pattern=*.tmp
# files older than 7 days are being removed
retain.days=7