Hallo ihr,
wir haben hier in der Firma einen zentralen Überwachungsserver. Alle Server sollten ihre Logs dort hinschicken, damit sie zentral einsehbar und archivierbar sind.
Ich versuche jetzt das Backendlog von Typo3 in an diesen Server zu schicken. Allerdings scheint das nicht so einfach zu sein, da die Anzeige im BE wahrscheinlich aus mehreren Tabellen zusammengesetzt wird.
Ich suche jetzt eine Lösung, wie ich die Logs sicher und in leserlicher Form vom Webserver zum Loggingserver bekomme.
Hat das schonmal jemand versucht/gemacht?
Gibt es eine Funktion/Extention, die das log in Textfiles auf das Filesystem schreibt?
Kann man Typo3 Dazu bringen mit einem Syslogserver zu reden?
Für jeglichen Lösungsansatz und Vorschläge wäre ich sehr Dankbar.
mfg
fatalerror 15
Hi,
also ich tippe mal darauf das man die Einträge nicht so ohne weiteres an einen syslog Server weiterleiten kann. Zumindest ist mir keine Typo3 Konfiguration bekannt. Wie immer im Leben würde dir aber ein kleines Shellscript sicherlich weiterhelfen. Einfach alle X Minuten die Werte aus der DB auslesen und via logger an deinen syslog weiterleiten. Dann hast du zumindest die Daten an zentraler Stelle und kannst diese archivieren.
Die Daten selber stehen alle in der Tabelle sys_log, du müsstest dir die höchstens ein wenig aufbereiten:
Beispielabruf mit etwas Formatierung:
mysql -u%USER -p%PASS -h%HOST %DB -e "select tstamp,log_data from sys_log"|gawk '{print strftime("%b %d %H:%m",$1)" " $2}'
An Hand des Timestamps kannst du dein Script ja so basteln das du nicht immer die kompletten Datensätze abrufen musst....
Viel Erfolg ;-)
Hallo, erst mal vielen dank für den Tipp. Ich habe den Befehl mal ausgeführt. Hier sind einige Zeilen, die ich so aus der Datenbank erhalten habe:
Feb 06 13:02 a:3:{i:0;s:13:"Pfeilgelb.gif";i:1;s:74:"/var/www/html/typo3/fileadmin/Design/images/Pfeilgelb.gif";i:2;s:1:"0";}
Feb 06 13:02 a:2:{i:0;s:4:"+ext";i:1;s:15:"sys_template:18";}
Feb 06 13:02 a:4:{i:0;s:1:"d";i:1;s:9:"pages:455";i:2;s:16:"Feedbackformular";i:3;s:3:"159";}
Feb 06 13:02 a:2:{i:0;s:1:"d";i:1;s:9:"pages:455";}
Feb 06 13:02 a:0:{}
Feb 06 14:02 a:2:{i:0;s:8:"NEW
Feb 06 15:02 a:2:{i:0;s:8:"NEW
Feb 09 10:02 a:3:{i:0;N;i:1;N;i:2;s:3:"web";}
Feb 09 10:02 a:3:{i:0;s:3:"web";i:1;s:13:"192.168.0.100";i:2;N;}
Feb 09 12:02 a:2:{i:0;s:22:"Other
Feb 09 13:02 a:2:{i:0;s:0:"";i:1;s:14:"tt_content:944";}
Feb 12 09:02 a:3:{i:0;N;i:1;N;i:2;s:3:"web";}
Feb 12 09:02 a:3:{i:0;s:3:"web";i:1;s:14:"192.168.0.100";i:2;N;}
Feb 12 09:02 a:2:{i:0;s:12:"Registrieren";i:1;s:9:"pages:113";}
Feb 12 09:02 a:3:{i:0;N;i:1;N;i:2;s:3:"web";}
Feb 12 09:02 a:3:{i:0;s:3:"web";i:1;s:14:"192.168.0.100";i:2;N;}
Feb 12 09:02 a:3:{i:0;N;i:1;N;i:2;s:3:"web";}
Feb 12 09:02 a:3:{i:0;s:3:"web";i:1;s:14:"192.168.0.100";i:2;N;}
Feb 12 09:02 a:0:{}
Feb 12 09:02 a:0:{}
Feb 12 09:02 a:0:{}
Feb 12 09:02 a:0:{}
Feb 12 09:02 a:0:{}
Feb 12 09:02 a:0:{}
Feb 13 09:02 a:3:{i:0;s:13:"192.168.0.100";i:1;N;i:2;s:7:"web";}
Feb 13 09:02 a:3:{i:0;s:13:"192.168.0.100";i:1;N;i:2;s:7:"web";}
Feb 13 09:02 a:3:{i:0;N;i:1;N;i:2;s:3:"web";}
Feb 13 09:02 a:3:{i:0;s:3:"web";i:1;s:13:"192.168.0.100";i:2;N;}
Feb 13 16:02 a:3:{i:0;N;i:1;N;i:2;s:3:"web";}
Feb 13 16:02 a:3:{i:0;s:3:"web";i:1;s:13:"192.168.0.100";i:2;N;}
Allerdings sind die so erstellten Logs meiner Meinung nach nicht mehr auswertbar. Es müsste eine möglichkeit geben, eine ähnliche Liste wie im Backend von Typo3 zu erzeugen.
Weiß jemand, wo diese Liste generiert wird? Vielleicht könnte man die ja per Cron alle X Minuten so auf das Filesystem schreiben.
Hi,
also die ganzen Daten werden fürs Backend über folgende Klasse
aufbereitet:
t3lib/class.t3lib_bedisplaylog.php
hmm...
ich bin nicht der Entwickler. Ich wusste noch nicht mal das es bei php Klassen gibt. Ich dachte das wäre eine sequenzielle Programmiersprache :o
Allerdings sieht man anhand des Quelltextes nicht, welche Tabellen mit welchen verbunden werden. Ich hatte an eine php-Datei gedacht, die mir den HTML-Code zur weiteren Verwendung auf der Standardausgabe ausgibt. Aber da habe ich wahrscheinlich zu einfach gedacht.
Hast du/habt ihr noch eine andere Idee, wie ich das Log in lesbarer Form aus der Datenbank ausgeladen bekomme?
Danke für jegliche weitere Hilfe!!!!