Wie kann man Speicherspitzen aufspüren?

8

Ich habe eine App in der Rackspace Cloud (Ubuntu 10.04). Aus irgendeinem Grund hat sich in den letzten 3 Nächten die Erinnerung erhöht und sich dann für etwa 7 Stunden abgeflacht, bevor sie schließlich abfiel. Es scheint um Mitternacht zu beginnen und dauert bis 7 Uhr morgens (ignorieren Sie die Zeiten auf der Karte - sie sind um 4 Stunden abwesend).

Alt-Text

Wenn Sie sich das Munin- Diagramm ansehen, scheint es keine erhöhte Aktivität in MySQL zu geben, und der Ethernet-Verkehr scheint während dieser Zeit überhaupt nicht zu spitzen (was so etwas wie einen Bot oder Crawler zu negieren scheint).

Welche Tools stehen Linux zur Verfügung, um so etwas zu beheben?

Jerhinesmith
quelle

Antworten:

3

Ich bin nicht ganz sicher, ob es perfekt passt, aber das Prozessabrechnungspaket (meistens psacct oder acct genannt) kann aufzeichnen, wer (welches Konto) was (welches Programm) ausführt. Dies kann Ihnen helfen, herauszufinden, was zum angegebenen Zeitpunkt ausgeführt wird.

wzzrd
quelle
Dies könnte tatsächlich eine gute Idee sein. psacct wird normalerweise verwendet, um über die CPU-Auslastung oder Takt-Ticks aufzuzeichnen, zu melden oder sogar zu begrenzen. Es war die alte Methode, um sicherzustellen, dass der Kunde / Benutzer des UNIX-Servers die Nutzung bezahlt, die er / sie / es getan hat. Ein Hinweis dazu: Psacct, das aktiviert wurde, um zumindest alles zu protokollieren, ist ein massiver Disk-Hogger bei der Speicherplatznutzung.
Reiche
1

Im Allgemeinen weiß ich nicht, welches Tool Ihnen helfen könnte, außer psregelmäßig zu protokollieren und später die Prozessaktivitäten zu analysieren.

Ich kann jedoch eine Vermutung über die Spitzen um 6:00 Uhr in Ihrem Diagramm anstellen. Dies könnten die täglichen Ubuntu-Standard-Cron-Jobs sein. Auf meinem Rechner /etc/crontab, daily.dkonfiguriert ist, um 06.25 Uhr zu laufen. Aber Sie sagten, wir sollten die Zeit ignorieren, also ist die offensichtliche Frage, haben Sie Cron-Jobs?

Elmarco
quelle
Das war auch mein erster Gedanke. Meine täglichen Cron-Jobs laufen jedoch um 13:00 Uhr Ortszeit. Es gibt einige Jobs, die von der App ausgeführt werden, aber sie beginnen entweder um 18:00 Uhr oder um 2:00 Uhr.
Jerhinesmith
2
Wenn Sie den regulären psWeg gehen, wird das HOWTO "HowTo: Profilspeicher in einem Linux-System" etwas detaillierter beschrieben: mail.nl.linux.org/linux-mm/2003-03/msg00077.html
Geoff Kinder
1

Meine Standardantwort auf solche Fragen wäre sar( System Activity Reporter ) aus dem sysstat- Paket.

Aber soweit ich weiß, sarsammelt kein Äquivalent zur Ausgabe von ps. Vielleicht würde die Kombination von sarund elmarcos Antwort (regelmäßig die Ausgabe von erfassen ps) helfen.

BEARBEITEN:

Steve D hat pidstatin dieser Frage erwähnt . Dies scheint eher für Ihre Bedürfnisse geeignet zu sein.

Christian
quelle
fügte einen weiteren Befehl hinzu, der in einer anderen Frage erwähnt wurde.
Christian