Perl Daemon -> PHP Live Log File

konzhelp

Grünschnabel
moin,

Ich habe ein für mich schier unlösbares, und unbeschreibliches Problem deshalb hoffe ich das die nachfolgende Beschreibung reicht um mir helfen zu können.

daemon.pl
-> skript1.pl -> generierte ausgabe 1​
-> skript2.pl -> generierte ausgabe 2​
-> skript3.pl -> generierte ausgabe 3​

der Daemon startet die Perlskripte sobald alle abgearbeitet sind wieder von vorne.

  • Die von den Perlskripten erzeugten Ausgaben werden beim Starten nun als plaintext im Browser ausgegeben.
  • Nun schliesse ich des Fenster. Der Daemon läuft weiter.
  • Ich öffne das Fenster wieder um zu kontrollieren ob der Deamon noch läuft.
    Deshalb sollen die generierten Ausgaben seit dem Letzten aufruf ausgegeben werden und da der daemon ja weiterläuft auch fortlaufend ohne andauernden refresh die weiteren ausgaben

Also ein Art Live Log File bzw Service Monitor. Leider stehen mir nur PHP, MySQL und Perl zur verfügung um mein Problem zu realisieren.

Zur Zeit landen die Ausgaben der Skripte noch auf der Standardausgabe des Skriptes also in dem Fall halt beim ersten Aufruf im Browser nach dem das Browserfenster geschlossen wurde verschwinden diese jedoch im Nirvana. Dieses Problem würde ich damit umgehen das ich die Ausgaben in ein Textfile umleite oder in eine MySQL Tabelle oder je nachdem was ihr für die mögliche Lösung falls es überhaupt eine geben sollte für besser erachtet.

mfg konzhelp
 
Ich würde die Ausgabe in eine Textdatei umleiten und per JavaScript (Ajax) fortlaufend aktualisieren, in einer <textarea> z. B.

Die Frage ist nun, wie lange die Daten vorhalten sollen. Sonst würde ich täglich eine neue Datei starten (was auch ein übersichtlicheres Log Verzeichnis bringt) oder mit einer Datenbank arbeiten.

Mit Textdateien wäre es aber, meiner Meinung nach, einfacher.
 
@Felix Jacobi
Danke für die Antwort jetzt muss ich bloss noch rausfinden ob ich das mit meinen doch relativ begrenzten Fähigkeiten hinbekomme. Kannst du mir vielleicht ein simples Beispiel Skript schreiben wie sowas dann aussehen könnte mit Ajax.

mfg konzhelp
 
Nein, sorry.

Bin selber kein großer Ajax Könner.

Allerdings könnte ich es mir so vorstellen, dass du eine PHP Funktion schreibst, die die Datei ausliest und diese alle paar Sekunden per Ajax aufrufst. Dies ist zwar nicht Live, aber so nah dran wie möglich, meine ich.

Bei der PHP Funktion könnte ich dir wahrscheinlich weiterhelfen, wenn es da hapert, beim Ajax Teil gar nicht. Am besten schaust du dafür mal im JavaScript Abteil rein.
 
Nochmals danke.

Werde ich mal ein bisschen im JavaScript Teil suchen.
Zur not kann mir ja jetzt vllt :google: weiterhelfen nachdem ich einen neuen Denansatz habe

mfg konzhelp
 
Zurück