Wie die überwachung langsamer PHP-Prozesse?
Ich ausführen von PHP-FPM mit Nginx. Ich habe eine Vielzahl von verschiedenen scripts auf meinem Server. Manchmal, da gibt es ein problem mit PHP-codes und der Prozess dauert zu lange. Dies verbraucht alle verfügbaren PHP-FPM childs; so hindert andere php-Skripte.
Wie kann ich den PHP-FPM log aufzeichnen langsamer php-Prozesse, als wir überwachen langsame mysql-Abfragen, um zu erkennen, welches script verursacht problem?
versuchen Pinba: pinba.org/wiki/Main_Page
Das sieht hilfreich, sollten Sie post wie eine Antwort.
Ich schrieb ein PHP-web-app, dass die benchmarks die bekanntesten aktuellen logging-frameworks für PHP (error_log, KLogger, Log4php, Monolog), falls es jemand hilft: github.com/jorgeorpinel/php-logging-benchmark
Das sieht hilfreich, sollten Sie post wie eine Antwort.
Ich schrieb ein PHP-web-app, dass die benchmarks die bekanntesten aktuellen logging-frameworks für PHP (error_log, KLogger, Log4php, Monolog), falls es jemand hilft: github.com/jorgeorpinel/php-logging-benchmark
InformationsquelleAutor Googlebot | 2011-12-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht. Verwenden Sie die nginx log_format zur Aufzeichnung der Dauer der einzelnen HTTP-Anforderung mit einer Genauigkeit von Millisekunden.
Also bist du schon Strippen aus literal-Werten und priorisieren basierend auf dem Produkt der Frequenz und der verstrichenen Zeit?
InformationsquelleAutor symcbean
php-fpm-Unterstützung slow logging-feature von php-Skript
in der php-fpm.conf musst du noch 2 Variablen
request_slowlog_timeout und slowlog
laut php-fpm wiki
; Das Zeitlimit für die Zustellung einer einzelnen Anforderung, nach der ein PHP-backtrace wird
; ausgegeben 'slowlog' - Datei. Ein Wert von '0' bedeutet 'aus'.
; Verfügbare Einheiten: s(econds)(default), m(inutes), h(ours), oder d(ays)
; Default-Wert: 0
; Die log-Datei für langsame Anfragen
; Default-Wert: nicht festgelegt
; Hinweis: slowlog ist obligatorisch, wenn request_slowlog_timeout eingestellt ist
zur überwachung von mysql-Abfragen bin ich mit dieser Abfrage, um die Liste der Abfragen, die ausgeführt wird, auf meinem Rechner
InformationsquelleAutor khizar ansari
Dies ist das zweite mal heute, wenn ich zu empfehlen U /MIN
Dies ist ein application-performance-monitoring-tool. Anfangs war es eine killer-app für die Schienen, aber später begannen Sie Unterstützung von PHP.
Kann es überwachen Sie Ihre Skripte, track langsamen, Anzeige alle Arten von Diagrammen.
Er kümmert sich auch um langsame SQL (und Sie können sogar sehen, erklären Pläne aus dem tool!)
Sollten Sie auf jeden Fall check it out.
Nun, es hängt alles davon ab, natürlich. Wenn Sie das hosting Ihrer Homepage, es ist gut, Rollen Sie Ihre eigenen Lösungen und haben Spaß in den Prozess. Aber wenn Sie versuchen, ein Unternehmen zu führen, die Sie wahrscheinlich nicht wollen, Zeit zu verbringen und Geld auf, was bereits gut umgesetzt. Es geht um Kosten und Gewinn.
Genau. Kosten und Gewinne. Die meisten Kunden ich arbeite für mittelgroße oder kleine Unternehmen, und die admins gehen in der Regel für die Aufbewahrung monatlichen Betriebskosten auf ein minimum. Kakteen und munin 2 Kostenlose monitoring-Lösungen, die ich vorher benutzt haben, mit guten Ergebnissen, aber im Laufe der Zeit zu viel des guten. 3 Zeilen code, und Sie können Profil nichts. Geschwindigkeit, Effizienz und Flexibilität zu nutzen und die Wiederverwendung von überall, kostenlos. Ich will nicht sagen, dass es keine gute Anwendung, die Sie geschrieben, nur sind manche Leute wie Diagramme (+ bezahlte Unterstützung), einige nicht.
Ich werde leicht mit Ihnen einverstanden hier. 3 Zeilen code genug, um ein Stück code unter Stoppuhr. Aber dann haben Sie, um zu speichern diese benchmark-Ergebnisse irgendwo, verwalten, DB, erstellen Sie Ihre eigene admin-Seite mit Diagrammen, etc. "3 lines of code" ist eine ziemlich grobe Vereinfachung.
Ich werde zugeben, dass meine 3 Zeilen code keine Daten, Sie sind mehr profiling und benchmarking-utils. Und ich habe übermäßig vereinfachen einen touch, weil es eigentlich 7 Zeilen. 😉 Und hey, ich habe Lesezeichen, die app, die Sie auf dem Laufenden! "Guten Tag, mein Freund
InformationsquelleAutor Sergio Tulentsev
Ich habe mit diese Klasse Profil und moniter, meine eigene utility-Skripte. Es funktioniert gut, wenn Sie nichts gegen die Pear-Klassen.
Können Sie verschiedene Timer im code und handeln die Werte, die diesen Timer zurück. Als bonus können Sie eine text-oder html-profiling output, wie lange es dauert, für jeden timer zu laufen.
Siehe die Dokumentation für mehr info.
Hoffe, das hilft, viel Glück.
InformationsquelleAutor stefgosselin
Appgati könnten hier etwas Hilfe.
Ist es nicht ein aus-ein-aus-Lösung zu Ihrem problem, doch können einige nützliche Einblicke in die lag eingeführt wurde. Sie könnten mit Verlust von Daten oder Zeit zu verlieren bei der Erzeugung des DOM. Dieses Skript gibt den Himmel Blick auf mögliche Problembereiche, die dann gezielt bekämpft werden.
Es kann auch hilfreich sein bei der Suche nach der Leistung einer bestimmten Funktion in das Skript.
Beispiel-Ausgabe:
)
InformationsquelleAutor fotuzlab