Cronjob in Appliance einrichten

Hilfe zu OTRS Problemen aller Art
Post Reply
telefonmann
Znuny newbie
Posts: 25
Joined: 26 Sep 2013, 09:25
Znuny Version: 3.2.11

Cronjob in Appliance einrichten

Post by telefonmann »

Guten Morgen,
ich fragte mich gerade, wie ich in der OTRS-Appliance Cronjobs anlege, die in bestimmten Zeitabständen Module ausführen.
Eine weitere Lösung wäre, Module nach einer Aktion ausführen zu lassen, z.b. nach Erstellen eines Tickets.

Meine Erfahrungen in dem Bereich sind recht limitiert bis nicht vorhanden. Die Möglichkeiten im GenericAgent sind vorhanden, jedoch für mich nicht ausreichend erklärt, sodass es mir noch nicht möglich war, eine Automatisierung einzustellen.

Wenn mir hier jemand weiterhelfen kann, wäre ich sehr dankbar.

edit: Ich dachte, ich hätte die Einstellung in der SysConfig gefunden gehabt. War wohl noch etwas früh nach den Feiertagen... ;) Die Fragestellung besteht aber weiterhin.
OTRS 3.2.11 - ITSM 3.2.9
IIS; MySQL; Windows Server 2008R2

OTRS 3.3.2 - ITSM 3.3.2
IIS; MySQL; Windows Server 2008R2
KlausNehrer
Znuny ninja
Posts: 1312
Joined: 25 May 2012, 08:51
Znuny Version: OTRS 4
Real Name: Klaus Nehrer

Re: Cronjob in Appliance einrichten

Post by KlausNehrer »

Wenn Du jetzt noch formulieren würdest, woran genau Du scheiterst?
Zum Beispiel: Was hast Du konfiguriert und
(1) was ließ sich nicht konfigurieren, oder
(2) was wurde nicht ausgeführt?
telefonmann
Znuny newbie
Posts: 25
Joined: 26 Sep 2013, 09:25
Znuny Version: 3.2.11

Re: Cronjob in Appliance einrichten

Post by telefonmann »

Ich scheitere schon daran, überhaupt einen Job auszuführen.

Zum Beispiel möchte ich eine Datei ausführen, die im Ordner OTRS/bin liegt, bspw. die example.pl.
Grundsätzlich stellt sich mir jetzt die Frage, ob ich überhaupt im Generic Agent so etwas einstellen kann, also dass bei einer Aktion, bspw. erstellen eines Tickets, diese Datei immer ausgeführt wird.

Im Generic Agent gibt es den Unterpunkt "Benutzerdefiniertes Modul ausführen". Was müsste ich da eintragen, um die Datei OTRS/bin/example.pl automatisch ausführen zu lassen?

Ausgangspunkt der Frage ist der, dass die Appliance möglichst einmal installiert werden soll und dann nicht mehr auf dem Server selbst gearbeitet werden soll, sondern nur noch über das Interface.

Edit: Oder ist es so, dass der Generic Agent nur Aufgaben ausführen kann, die auch ein "normaler" Agent über das Interface ausführt? Also wäre das Anstoßen von Perlskripten sowieso nicht möglich, kann das sein?
OTRS 3.2.11 - ITSM 3.2.9
IIS; MySQL; Windows Server 2008R2

OTRS 3.3.2 - ITSM 3.3.2
IIS; MySQL; Windows Server 2008R2
telefonmann
Znuny newbie
Posts: 25
Joined: 26 Sep 2013, 09:25
Znuny Version: 3.2.11

Re: Cronjob in Appliance einrichten

Post by telefonmann »

Weiterhin besteht das Problem, dass ich Perlskripte nicht mit dem Generic Agent automatisiert ausführen kann.
Gibt es hierin keine Möglichkeit dazu? Wenn ja, wie automatisiere ich dieses Verhalten stattdessen?

In der Logfile wird folgende Meldung hinterlegt:
Module otrs.xxx.pl.pm not found/could not be loaded!

2 Dinge, die mich stutzig machen:
1. Warum wird automatisch die Dateiendung .pm angehängt, die ich nicht so eingetragen habe im Bereich "Benutzerdefiniertes Modul ausführen"?
2. Das Skript ist definitiv vorhanden, daher müsste es eigentlich auch gefunden werden. Manuelles Anstoßen auf dem Server ist möglich, so wird das Skript auch vollständig fehlerfrei ausgeführt.

Jede Hilfe ist willkommen. :)
OTRS 3.2.11 - ITSM 3.2.9
IIS; MySQL; Windows Server 2008R2

OTRS 3.3.2 - ITSM 3.3.2
IIS; MySQL; Windows Server 2008R2
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Cronjob in Appliance einrichten

Post by reneeb »

Der GenericAgent kann nur Module ausführen, keine Skripte.

Überführe die Funktionalität des Skripts in ein Modul und trage dann das Modul bei "Benutzerdefiniertes *Modul*" ein.

Wenn Dein Skript z.B. so aussieht

Code: Select all

#!/usr/bin/perl

use strict;
use warnings;

print "Test\n";
dann muss Dein Modul (z.B. Kernel/Config/GenericAgentTelefonmann.pm) so aussehen:

Code: Select all

package Kernel::Config::GenericAgentTelefonmann;

use strict;
use warnings;

sub new {
    my ($Type,%Param) = @_;

    my $Self = bless {}, $Type;
    return $Self;
}

sub Run {
    my ($Self, %Param) = @_;

    print "Test\n";
}

1;
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
telefonmann
Znuny newbie
Posts: 25
Joined: 26 Sep 2013, 09:25
Znuny Version: 3.2.11

Re: Cronjob in Appliance einrichten

Post by telefonmann »

Vielen Dank für die schnelle Antwort, das hilft mir viel weiter. :)
OTRS 3.2.11 - ITSM 3.2.9
IIS; MySQL; Windows Server 2008R2

OTRS 3.3.2 - ITSM 3.3.2
IIS; MySQL; Windows Server 2008R2
telefonmann
Znuny newbie
Posts: 25
Joined: 26 Sep 2013, 09:25
Znuny Version: 3.2.11

Re: Cronjob in Appliance einrichten

Post by telefonmann »

Nach dem Umwandeln in ein Modul kann ich den Job über den Generic Agent ausführen, auch automatisiert ausführen lassen.
Was jetzt noch nicht funktioniert ist die zeitgesteuerte Ausführung, also bspw. alle 10 Minuten. Ich habe ausgewählt zwischen 6 und 21 Uhr alle 10 Minuten (alle Minutenschritte aktiv), trotzdem wird das Modul nicht ausgeführt. Gibt es hierbei noch etwas zu beachten?

Auch funktionieren nicht alle aktionsabhängigen Ausführungen.

Wer mir bei den beiden Problemen weiterhelfen kann, darf sich frei fühlen, dies zu tun. :)
OTRS 3.2.11 - ITSM 3.2.9
IIS; MySQL; Windows Server 2008R2

OTRS 3.3.2 - ITSM 3.3.2
IIS; MySQL; Windows Server 2008R2
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Cronjob in Appliance einrichten

Post by reneeb »

Läuft der GenericAgent an sich? Also ist ein Cronjob dafür eingerichtet? Bau mal Logmeldungen ein, so dass Du die Eventgesteuerte Ausführung besser debuggen kannst.
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
Post Reply