Wie man RabbitMQ überwacht (ohne Nachrichten, Geld oder Schlaf zu verlieren)

Stellen Sie sich Folgendes vor: Es ist Montagmorgen. Auf Ihrer E-Commerce-Website läuft ein “48-Stunden-Blitzverkauf”. Die Bestellungen gehen ein, die Zahlungen werden bearbeitet und Ihr Support-Team ist ungewöhnlich ruhig - eine wunderbare Sache.

Dann explodiert Slack plötzlich.

  • “Die Kasse bleibt beim Drehen hängen...”

  • “Die Auftragsbestätigungen gehen nicht raus.”

  • “Das Inventar sieht falsch aus.”

  • “Warum stehen die Erstattungen stundenlang in der Warteschlange?”

Am Anfang war alles siehe gesund: Die CPU ist in Ordnung, die Webserver laufen, und die Datenbankdiagramme zeigen nichts Dramatisches an. Aber das System fühlt sich immer noch... eingefroren an.

Nach einer 45-minütigen Brandbekämpfung finden Sie den wahren Schuldigen: RabbitMQ. Einige Warteschlangen blähten sich auf, die Consumer wurden langsamer, die Acknowledgements stauten sich und der Arbeitsspeicher erreichte den Höchststand. RabbitMQ fing an, Flusskontrolle anzuwenden, Publisher fingen an, sich zu verzögern, und Ihre Geschäftslogik hörte leise auf, Nachrichten durch kritische Workflows zu bewegen.

Das ist genau der Grund RabbitMQ-Überwachung ist nicht optional. Wenn RabbitMQ das “Herz-Kreislauf-System” Ihrer Architektur ist, dann ist die Überwachung der Herzmonitor, der Ihnen sagt, dass etwas nicht stimmt vor der Patient kollabiert.

(mehr …)