2010/5/6 Guido Pesch <guido.pe...@netcologne.de>:
> Hallo Liste,
>
> gibt es eine Möglichkeit die db-zugriffe im Production mode auf dem Server
> zu loggen?
>
Ich gehe mal stark davon aus, dass du MySQL nutzt.

Erster Schritt: Mit show process list im MySQL client oder ueber
mysql-admin bekommst du schonmal einen Überblick über aktive
Connections und deren Queries, wenn sie lang laufen, poppen sie auch
da hin und wieder auf.

Zweiter Schritt: Schau im production.log welche Requests lang dauern,
diese sind deine erste Anlaufstelle fuer Query-Analyse.

Dritter Schritt: Aktiviere das slow query log. Geht bei neueren
MySQL-Versionen zur Laufzeit mittlerweile. Darin tauchen Queries auf,
die ueber einen bestimmten Threshold gehen, den du konfigurieren
kannst, allerdings je nach Version nur auf Sekundenebene, in neueren
Versionen auch auf Millisekundenebene.

Fuer den Notfall aktiviere Debug-Logging fuer dein production.log,
hoechstens fuer 30 Minuten oder auch weniger, damit du einen
Ueberblick kriegst, filtere die Queries raus und schau auf die
Laufzeiten

Soviel zur ersten Schnellanalyse.

Fuer tiefergehende Analyse: http://railslab.newrelic.com/scaling-rails
und das Buch "High Performance MySQL"

Gruesse, Mathias
-- 
http://scalarium.com | http://paperplanes.de | http://holgarific.net
http://twitter.com/roidrage
_______________________________________________
rubyonrails-ug mailing list
rubyonrails-ug@headflash.com
http://mailman.headflash.com/listinfo/rubyonrails-ug

Antwort per Email an