php.de

Zurück   php.de > Webentwicklung > Software-Design

Software-Design Diskussionen auf Profi-Niveau: PHP Lösungen auf konzeptioneller Ebene

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
Alt 18.04.2011, 15:38  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard [Erledigt] Herangehensweise Request-Logging

Hallo zusammen,

bei uns tritt es in letzter Zeit öfters auf, das ein bestimmter Apache Prozess aus der Reihe tanzt. D.h. er braucht jede Menge Ram und Prozessorleistung und läuft ewig lange.

Um herauszufinden welcher Request dahinter steckt, würde ich gerne die ausgeführten Requests mitloggen.

Eigentlich wäre mod_log_config vom Apache dafür bestens geeignet, denn es würde mir alle benötigten Infos liefern, wie Remote-IP, Apache-PID, Url usw.

Allerdings loggt der Apache das erst nachdem er den Request zu Ende geführt hat und ich will bei mir ja den Übeltäter auf frischer Tat ertappen.

Mod_log_forensic wäre die Alternative, allerdings ist das überhaupt nicht konfigurierbar. Da bekomme ich also die benötigten Infos leider nicht raus.

Ich werde also das Logfile wohl per PHP schreiben müssen, bspw. über die bootstrap-File.

Damit ich das ganze nicht irgenwann in einer gigabytegroßen Datei habe, würde ich gerne das Logging-Prinzip von Unix, also Log -> Archivierung -> Entsorgung, benutzen.

Leider finde ich im Manual nichts dazu, ob error_log() mit Option 3 das ganze automatisch macht oder ob ich das alles selber einbauen muss.

Habt ihr sowas schonmal gemacht? Kennt ihr andere/sinnvolle Möglichkeiten?

Das Ergebnis sollte (hier mit mod_log_config) in etwa so aussehen:

Zitat:
[18/Apr/2011:15:36:34 +0200] 192.168.0.14 PID:25173 GET example.com /provider/newMessages/count/1
Vielen Dank im Vorraus
Gruß
cy
cycap ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.04.2011, 15:43  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Für die Archivierung und Entsorgung von Logfiles würde ich den logrotate-Daemon nutzen (ich kann mir nicht vorstellen, dass PHP das selbst macht, dafür ist logrotate zuständig).
Der Daemon lässt sich beliebig konfigurieren. Du kannst also jede beliebige Datei als Log nutzen.
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline   Mit Zitat antworten
Alt 18.04.2011, 15:43  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.246
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

syslog
Zumindest bzgl. Unix.
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 18.04.2011, 15:48  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Zitat:
Zitat von Manko10 Beitrag anzeigen
Für die Archivierung und Entsorgung von Logfiles würde ich den logrotate-Daemon nutzen (ich kann mir nicht vorstellen, dass PHP das selbst macht, dafür ist logrotate zuständig).
Der Daemon lässt sich beliebig konfigurieren. Du kannst also jede beliebige Datei als Log nutzen.
Ahh, thx. Ich glaube damit komme ich weiter.
cycap ist offline   Mit Zitat antworten
Alt 22.04.2011, 11:02  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.874
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

PHP selbst kann kein log-rotate, dafür muss man entweder sich auf externe log-rotation tools/deamons verlassen oder logging-frameworks nutzen,

z.B.: http://logging.apache.org/log4php/
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist offline   Mit Zitat antworten
Alt 22.04.2011, 11:36  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Es hat ja auch niemand etwas anderes behauptet. Auf den logrotate-Daemon habe ich ja schon hingewiesen.
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline   Mit Zitat antworten
Alt 22.04.2011, 13:24  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von tr0y Beitrag anzeigen
PHP selbst kann kein log-rotate
Ja, aber wenn man error_log nutzt(), um in eine Datei zu loggen, kann man deren Namen ja schon mal wenigstens unter Nutzung von date('...') beeinflussen, um sich stündlich/täglich/wöchentlich/... eine neue Datei erzeugen zu lassen - damit verhindert man ganz simpel, dass alles in einer einzigen Logdatei landet, die irgendwann „riesig“ wird.

Archivieren/Packen älterer Dateien kann man dann immer noch mit einem „externen“ Mechanismus machen, der nicht im loggenden Script selber implementiert ist, so dass man dieses nicht unnötig ausbremst.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Jquery AJAX request wird erst am Ende ausgeführt PiXeL1337 JavaScript, Ajax und mehr 10 24.02.2011 09:02
[Erledigt] AJAX Request funktioniert nicht Nickstar JavaScript, Ajax und mehr 6 10.11.2010 20:21
[Erledigt] Mehrere DIV Container mit einem Klick ändern (mit mehreren Request Aufrufe Lebenssonde JavaScript, Ajax und mehr 11 26.08.2010 09:01
curl request ohne antwort abzuwarten devil13 PHP-Fortgeschrittene 9 04.08.2010 16:31
NUSOAP Request und Problem mit assoziativen Arrays tuxnisi PHP-Fortgeschrittene 2 11.04.2010 15:31
[Erledigt] leeres request trotz übergebenen Daten AJAX mupilz JavaScript, Ajax und mehr 6 06.04.2010 06:55
http_class verwenden hans213 PHP Tipps 2009 27 15.01.2010 03:07
mod_rewrite URL Veränderung bei 2. Request choice PHP Tipps 2009 4 22.12.2009 16:42
[Erledigt] AJAX interpretRequest läuft nur mit alert() Buschdieb JavaScript, Ajax und mehr 14 26.08.2009 14:04
[Erledigt] Ajax Request Datei nicht direkt öffnen Heinerlutscher JavaScript, Ajax und mehr 5 02.03.2009 18:10
GET Request in Datei speichern noreux PHP Tipps 2008 5 11.11.2008 20:09
[Erledigt] PHP5: Request Parameter werden nicht korrekt ausgegeben dmecir PHP Tipps 2008 11 20.08.2008 17:37
404 logging mit referer und request uri ff-webdesigner Server, Hosting und Workstations 8 12.01.2007 18:45
[Erledigt] HTTP Request absetzen und Antwort auswerten PHP-Fortgeschrittene 1 02.07.2005 13:16

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
request loggen, apache request loggen, php request get in datei speichern, 404 loggen, php loggen, mod_log_forensic auswerten, php request loggen

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:34 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum